Closed binbowang1987 closed 9 years ago
Hi,
Could you tell me:
I have the BH8-280 hand. Linux kernel version is 3.2.0-23-generic. When I send the INIT command, I can heard the initialization sound.
Sometimes I've detected something similar. Try powering on the hand and afterwards connecting the can-usb adapter. Once connected, call the init service once or twice and let me know if works.
I have tried your suggest, but it does not works as well.
Is there anyone can help me ?
I've increased the delay in the init_hand procedure.
https://github.com/RobotnikAutomation/barrett_hand/commit/7d378c3b46b2132b6d2b3ca183441a3d7839ef41
You can update your version a try it.
It seems the problem is after calling the method self.get_property(FINGER1, ROLE) in the pyHand.init_hand. It doesn't read the response from the can bus and it fails. If it doesn't work, maybe increasing the sleep time in methods get_16 and get_32, you can get the response from the bus.
I have changed the sleep time to 50, but it do not work as well.
binbowang1987@163.com
From: Roman Navarro Garcia Date: 2014-09-09 15:26 To: RobotnikAutomation/barrett_hand CC: Binbowang Subject: Re: [barrett_hand] error on INIT_HAND service (#1) I've increased the delay in the init_hand procedure. 7d378c3 You can update your version a try it. It seems the problem is after calling the method self.get_property(FINGER1, ROLE) in the pyHand.init_hand. It doesn't read the response from the can bus and it fails. If it doesn't work, maybe increasing the sleep time in methods get_16 and get_32, you can get the response from the bus. — Reply to this email directly or view it on GitHub.
In method pyHand::init_hand(), try commenting the call to "self.get_property(FINGER1, ROLE)". In this case, it'll pass to READY allways. Check if then it's working in READY_STATE.
It is working in ready_state, but the bhand_controller prompts canError
binbowang1987@163.com
From: Roman Navarro Garcia Date: 2014-09-09 16:29 To: RobotnikAutomation/barrett_hand CC: Binbowang Subject: Re: [barrett_hand] error on INIT_HAND service (#1) In method pyHand::init_hand(), try commenting the call to "self.get_property(FINGER1, ROLE)". In this case, it'll pass to READY allways. Check if then it's working in READY_STATE. — Reply to this email directly or view it on GitHub.
But if I move the slider on the rqt_bhand the finger will move when the bhand_controler's state is in READY_INIT. binbowang1987@163.com
From: binbowang1987@163.com Date: 2014-09-09 16:37 To: RobotnikAutomation/barrett_hand Subject: Re: Re: [barrett_hand] error on INIT_HAND service (#1) It is working in ready_state, but the bhand_controller prompts canError
binbowang1987@163.com
From: Roman Navarro Garcia Date: 2014-09-09 16:29 To: RobotnikAutomation/barrett_hand CC: Binbowang Subject: Re: [barrett_hand] error on INIT_HAND service (#1) In method pyHand::init_hand(), try commenting the call to "self.get_property(FINGER1, ROLE)". In this case, it'll pass to READY allways. Check if then it's working in READY_STATE. — Reply to this email directly or view it on GitHub.
You're working in a virtual machine, aren't you?
Could you test it in a native Ubuntu? I'm wondering if there was a problem due to be working in a virtual machine. I'm not sure how the can driver works in this environment...
I commeted
in function readyState(self) and it works.
binbowang1987@163.com
From: binbowang1987@163.com Date: 2014-09-09 16:40 To: RobotnikAutomation/barrett_hand Subject: Re: Re: [barrett_hand] error on INIT_HAND service (#1) But if I move the slider on the rqt_bhand the finger will move when the bhand_controler's state is in READY_INIT.
binbowang1987@163.com
From: binbowang1987@163.com Date: 2014-09-09 16:37 To: RobotnikAutomation/barrett_hand Subject: Re: Re: [barrett_hand] error on INIT_HAND service (#1) It is working in ready_state, but the bhand_controller prompts canError
binbowang1987@163.com
From: Roman Navarro Garcia Date: 2014-09-09 16:29 To: RobotnikAutomation/barrett_hand CC: Binbowang Subject: Re: [barrett_hand] error on INIT_HAND service (#1) In method pyHand::init_hand(), try commenting the call to "self.get_property(FINGER1, ROLE)". In this case, it'll pass to READY allways. Check if then it's working in READY_STATE. — Reply to this email directly or view it on GitHub.
It seems you can write into the CAN bus but you cannot read from it. That's because "self.hand.process_can_messages() != 0:" is failing..
I found that this problem maybe caused by the peak-linux-driver, because it can not read back the message from the can bus, but it can send message through the can bus. Which peadk-linux-driver does you use?
binbowang1987@163.com
From: binbowang1987@163.com Date: 2014-09-09 17:03 To: RobotnikAutomation/barrett_hand Subject: Re: Re: [barrett_hand] error on INIT_HAND service (#1) I commeted
in function readyState(self) and it works.
binbowang1987@163.com
From: binbowang1987@163.com Date: 2014-09-09 16:40 To: RobotnikAutomation/barrett_hand Subject: Re: Re: [barrett_hand] error on INIT_HAND service (#1) But if I move the slider on the rqt_bhand the finger will move when the bhand_controler's state is in READY_INIT.
binbowang1987@163.com
From: binbowang1987@163.com Date: 2014-09-09 16:37 To: RobotnikAutomation/barrett_hand Subject: Re: Re: [barrett_hand] error on INIT_HAND service (#1) It is working in ready_state, but the bhand_controller prompts canError
binbowang1987@163.com
From: Roman Navarro Garcia Date: 2014-09-09 16:29 To: RobotnikAutomation/barrett_hand CC: Binbowang Subject: Re: [barrett_hand] error on INIT_HAND service (#1) In method pyHand::init_hand(), try commenting the call to "self.get_property(FINGER1, ROLE)". In this case, it'll pass to READY allways. Check if then it's working in READY_STATE. — Reply to this email directly or view it on GitHub.
I used to use the peak-linux-driver-7.10 but I installed the last one (peak-linux-driver-7.12) and it also works fine. When you compile the driver, do you use the make command with the following option "make NET=NO_NETDEV_SUPPORT"?
I do not use the option "NET=NO_NETDEV_SUPPORT", should I use it or not?
We usually work with that option. You could try and see if it works.
It is works now, but there is a problem that during work it will change the state from READY_STATE to FAILURE_STATE. I looked in the code, print the data reveived from the can bus and find that there is some errors when receiving datas.
Does it happen with the hand is idle or when you send commands? You can try reducing the parameter 'desired_freq' in the config file bhand.yaml and see if the problem remains.
Same problem here. Initialization fails, commenting out the the code above helped in changing the state into ready state, but it can't move or read the sensors. I am using BH280 + ubuntu 12.04 + peak-linux-7.13 (NET=NO_NETDEV_SUPPORT RT=NO_RT) and I tried different frequencies down to 50 and still facing the same problem.
Hi,
I don't have a BH280 to test if this is a problem with this version, but I'm going to ask. So far, all the problems seem to be related to the BH280.
Hello all, I recently started using BH280, ubuntu 12.04. i tried to control the barrett hand , but im getting the following error.
[ERROR] [WallTime: 1430505183.328981] /bhand_node::handActions: action not allowed in state INIT_STATE [ERROR] [WallTime: 1430505185.568807] /bhand_node::handActions: action not allowed in state INIT_STATE [ERROR] [WallTime: 1430505188.201041] /bhand_node::handActions: action not allowed in state INIT_STATE [ERROR] [WallTime: 1430505188.544815] /bhand_node::handActions: action not allowed in state INIT_STATE [ERROR] [WallTime: 1430505189.185010] /bhand_node::handActions: action not allowed in state INIT_STATE [ERROR] [WallTime: 1430505189.776764] /bhand_node::handActions: action not allowed in state INIT_STATE [ERROR] [WallTime: 1430505189.976888] /bhand_node::handActions: action not allowed in state INIT_STATE [ERROR] [WallTime: 1430505199.620941] /bhand_node::handActions: error on INIT_HAND service [ERROR] [WallTime: 1430505199.621750] /bhand_node::canError: Errors on CAN bus
And also when i' trting this command " rosservice call /bhand_node/actions "action: 1"". i'm getting the following error.
ret:false.
By going through above comments , i understod that a few of are facing the same problem. Did anyone solved this issue? If yes, can you please tell me how?
I' trying to solve this from past 2 weeks, but no lucky. i would be happy if anyone helps me.
Thanks, Sai Krishna Allani
HI Roman: I am Working on the Barrett hand BH8-280 with ubuntu 16 and peak-linux-driver version 8.5.1. and I am receiving the same problems as above. I have read through the solutions above and trying to fix the problem in the past week. I couldn't get it fixed.
this is what I get from the terminal
PCANBasic::Initialize: PCAN version info = Release_20171027_n
[ERROR] [1529680099.204070]: /bhand_node::handActions: error on INIT_HAND service [ERROR] [1529680099.205169]: /bhand_node::canError: Errors on CAN bus [INFO] [1529680099.205920]: BHand::switchToState: FAILURE_STATE PCANBasic::Uninitialize: Port /dev/pcan32 closed successfully [INFO] [1529680105.245997]: BHand::switchToState: INIT_STATE PCANBasic::Initialize: Port /dev/pcan32 opened successfully PCANBasic::Initialize: Port /dev/pcan32 configured PCANBasic::Initialize: PCAN version info = Release_20171027_n
[ERROR] [1529680112.733178]: /bhand_node::handActions: action not allowed in state INIT_STATE [ERROR] [1529680137.268327]: /bhand_node::handActions: error on INIT_HAND service [ERROR] [1529680137.269569]: /bhand_node::canError: Errors on CAN bus [INFO] [1529680137.270347]: BHand::switchToState: FAILURE_STATE PCANBasic::Uninitialize: Port /dev/pcan32 closed successfully [INFO] [1529680142.586353]: BHand::switchToState: INIT_STATE PCANBasic::Initialize: Port /dev/pcan32 opened successfully PCANBasic::Initialize: Port /dev/pcan32 configured PCANBasic::Initialize: PCAN version info = Release_20171027_n
and the hand only responded with rosservice call bhand_node/ actions "1" and the barrett hand only responded with rosservice call bhand/ action:1 will initialize the hand, but still return false. and the hand will not response with action 2 and 3 will return false directly with the error message listed above
Hi,
I am running Ubuntu 18.04 with ros melodic and got the Barret hand BH8-282 initialized and to work. However, after I initialize the hand is making a continuous high pitch noise. Does anyone know where this originates from?
I essentially did the following:
1) Installed the peak-linux-driver-8.7.0 2) Insalled pcan-python https://github.com/RobotnikAutomation/pcan_python 3) Commented out self.get_property(FINGER1, ROLE) on line 218
After this I could successfully run the following commands rosservice call /bhand_node/actions "action: 1", rosservice call /bhand_node/actions "action: 2", and rosservice call /bhand_node/actions "action: 3".
I could also set the position of the joints by publishing on the /bhand_node/command topic.
The high pitched sound is normal. It means the hand has been initialized. It originates from somewhere inside the hand but that is expected behavior.
Yeah so much I understood. But the problem is that the high pitch sound does not stop but instead continuous until I close all the nodes and whatnot.
That's normal operation. I have not found a way to turn it off. Headphones are probably the only solution.
On Tue, Jan 22, 2019, 4:36 AM Jens Lundell <notifications@github.com wrote:
Yeah so much I understood. But the problem is that the high pitch sound does not stop but instead continuous until I close all the nodes and whatnot.
— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/RobotnikAutomation/barrett_hand/issues/1#issuecomment-456332409, or mute the thread https://github.com/notifications/unsubscribe-auth/AEKlYXx6F7jhL5VmNhGgTYhozMDDkcvOks5vFtuxgaJpZM4Cd1wv .
Hi There, I am Working on the Barrett hand BH8-280 with ubuntu 16 and peak-linux-driver version 8.6.0. and I am receiving the same problems as above. I have read through the solutions above and trying to fix the problem in the past week. I couldn't get it fixed. I essentially did the following:
1- Installed the peak-linux-driver-8.6.0
2- Insalled pcan-python https://github.com/RobotnikAutomation/pcan_python
3- Commented out self.get_property(FINGER1, ROLE) on line 218
when I try to initialize the hand I got the following results:
process[bhand_node-2]: started with pid [3883]
{'F2_TIP': ['bh_j23_joint', 3], 'F1': ['bh_j12_joint', 0], 'F2': ['bh_j22_joint', 2], 'F3': ['bh_j32_joint', 4], 'F3_TIP': ['bh_j33_joint', 5], 'F1_TIP': ['bh_j13_joint', 1], 'SPREAD_1': ['bh_j11_joint', 6], 'SPREAD_2': ['bh_j21_joint', 7]}
[INFO] [1557128673.253408]: /bhand_node: port /dev/pcan32, freq = 250, topic = state, tactile_sensors = True
[INFO] [1557128673.253821]: bhand_node: starting
PCANBasic::Initialize: Port /dev/pcan32 opened successfully
PCANBasic::Initialize: Port /dev/pcan32 configured
PCANBasic::Initialize: PCAN version info = Release_20180720_n
[ERROR] [1557128762.250749]: /bhand_node::handActions: error on INIT_HAND service
[ERROR] [1557128762.251937]: /bhand_node::canError: Errors on CAN bus
[INFO] [1557128762.252849]: BHand::switchToState: FAILURE_STATE
PCANBasic::Uninitialize: Port /dev/pcan32 closed successfully
[INFO] [1557128767.741936]: BHand::switchToState: INIT_STATE
[ERROR] [1557128768.454924]: /bhand_node::handActions: action not allowed in state INIT_STATE
PCANBasic::Initialize: Port /dev/pcan32 opened successfully
PCANBasic::Initialize: Port /dev/pcan32 configured
PCANBasic::Initialize: PCAN version info = Release_20180720_n
[ERROR] [1557128784.973075]: /bhand_node::handActions: error on INIT_HAND service
[ERROR] [1557128784.974646]: /bhand_node::canError: Errors on CAN bus
[INFO] [1557128784.975419]: BHand::switchToState: FAILURE_STATE
PCANBasic::Uninitialize: Port /dev/pcan32 closed successfully
[INFO] [1557128790.061772]: BHand::switchToState: INIT_STATE
PCANBasic::Initialize: Port /dev/pcan32 opened successfully
PCANBasic::Initialize: Port /dev/pcan32 configured
PCANBasic::Initialize: PCAN version info = Release_20180720_n
[ERROR] [1557128904.681889]: /bhand_node::handActions: error on INIT_HAND service
[ERROR] [1557128904.683134]: /bhand_node::canError: Errors on CAN bus
[INFO] [1557128904.684033]: BHand::switchToState: FAILURE_STATE
[ERROR] [1557128907.667402]: /bhand_node::handActions: action not allowed in state FAILURE_STATE
PCANBasic::Uninitialize: Port /dev/pcan32 closed successfully
[INFO] [1557128910.486072]: BHand::switchToState: INIT_STATE
PCANBasic::Initialize: Port /dev/pcan32 opened successfully
PCANBasic::Initialize: Port /dev/pcan32 configured
PCANBasic::Initialize: PCAN version info = Release_20180720_n
[ERROR] [1557128911.608389]: /bhand_node::handActions: action not allowed in state INIT_STATE
[ERROR] [1557128931.567532]: /bhand_node::handActions: action not allowed in state INIT_STATE
[ERROR] [1557128940.289859]: /bhand_node::handActions: error on INIT_HAND service
[ERROR] [1557128940.291386]: /bhand_node::canError: Errors on CAN bus
[INFO] [1557128940.292094]: BHand::switchToState: FAILURE_STATE
[ERROR] [1557128944.408154]: /bhand_node::handActions: action not allowed in state FAILURE_STATE
I tried all the above solutions but still I could not initialize the hand, any help in this please. thank you
Hello, did you guys figured out how to solve this problem? I stuck on the same issue. I used Ubuntu 16 with BH282 and peak-linux-driver-8.7.0. I tried to comment out self.get_property(FINGER1, ROLE)
in init_hand but has no luck. The can error message keeps showing at ready state. I feel it might be related to the can bus. Any idea how I could fix this? Thx
I occured a problem , here is the log.
SUMMARY
PARAMETERS
NODES / bhand_node (bhand_controller/bhand_node.py)
ROS_MASTER_URI=http://localhost:11311
core service [/rosout] found process[bhand_node-1]: started with pid [17274] {'F2_TIP': ['bh_j23_joint', 3], 'F1': ['bh_j12_joint', 0], 'F2': ['bh_j22_joint', 2], 'F3': ['bh_j32_joint', 4], 'F3_TIP': ['bh_j33_joint', 5], 'F1_TIP': ['bh_j13_joint', 1], 'SPREAD_1': ['bh_j11_joint', 6], 'SPREAD_2': ['bh_j21_joint', 7]} [INFO] [WallTime: 1409721866.752888] /bhand_node: port /dev/pcanusb0, freq = 250, topic = state, tactile_sensors = True [INFO] [WallTime: 1409721866.753104] bhand_node: starting PCANBasic::Initialize: Port /dev/pcanusb0 opened successfully PCANBasic::Initialize: Port /dev/pcanusb0 configured PCANBasic::Initialize: PCAN version info = Release_20140723_n [ERROR] [WallTime: 1409721892.588819] /bhand_node::handActions: error on INIT_HAND service [ERROR] [WallTime: 1409721892.589719] /bhand_node::canError: Errors on CAN bus [INFO] [WallTime: 1409721892.590277] BHand::switchToState: FAILURE_STATE PCANBasic::Uninitialize: Port /dev/pcanusb0 closed successfully [INFO] [WallTime: 1409721898.302130] BHand::switchToState: INIT_STATE PCANBasic::Initialize: Port /dev/pcanusb0 opened successfully PCANBasic::Initialize: Port /dev/pcanusb0 configured PCANBasic::Initialize: PCAN version info = Release_20140723_n [ERROR] [WallTime: 1409722123.427787] /bhand_node::handActions: action not allowed in state INIT_STATE [ERROR] [WallTime: 1409722125.329947] /bhand_node::handActions: action not allowed in state INIT_STATE [ERROR] [WallTime: 1409722125.529729] /bhand_node::handActions: action not allowed in state INIT_STATE
when I run the command bellow, the return value is 'False'.
rosservice call /bhand_node/actions "action: 1"
ret: False
Enviroment PC:VMware Virtual Machine OS:Unbutu 12.04 ROS:Groovy CAN: USB-PCAN