Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Takktile 2: ERROR! Encoder malfunction, prevented motor catastrophe. #42

Open
Deastan opened this issue Aug 30, 2019 · 2 comments
Open

Comments

@Deastan
Copy link

Deastan commented Aug 30, 2019

Hello everyone,
I have an error with the reflex takktile 2. I didn't use it for months and now, I am trying to re-use it... but I get an strange error.
I ran a roscore, the normal command for running the hands, hand finally, the calibration.
So in summary:

terminal 1: roscore
terminal 2: roslaunch reflex reflex_takktile2.launch eth:=eth1
terminal 3: rosrun reflex test_reflex_takktile2_hand.py

Then, for the calibration you have to press enter to start the calibration and i got an error on the teminal 2.

[ INFO] [1567173001.059249367]: Beginning finger calibration sequence... [ INFO] [1567173001.145366764]: Step fingers inwards: 0+6 0+6 0+6 0+0 [FATAL] [1567173001.145437963]: ERROR! Encoder malfunction, prevented motor catastrophe. Please check finger connections!

What should I do, please ?

When I try to change the value on RQT. The finger 1 started when the setting on rqt is 0.0 for position finger one, The finger move directly to 2.5. And it seem to be a initial state.
Now, after many trial, nothing work. I can run the terminal 2, but nothing is happening even with RQT.

Details:
process[recorder-1]: started with pid [21834]
process[driver_node_0-2]: started with pid [21835]
process[reflex_takktile_hand2-3]: started with pid [21836]
[ INFO] [1567172953.928245137]: Succesfully loaded all parameters
[ INFO] [1567172953.928279102]: Populate_tactile_threshold
[ INFO] [1567172953.928620240]: Publishing the /hand_state topic
[ INFO] [1567172953.929150452]: Starting reflex_hand_driver on network interface eth1
[ INFO] [1567172953.929167498]: ReflexHand constructor
[ INFO] [1567172953.929174411]: Ethernet: eth1
[ INFO] [1567172953.929180159]: Multicast address: 224.0.0.124
[ INFO] [1567172953.929324408]: Found address 127.0.0.1 on interface lo
[ INFO] [1567172953.929334025]: Found address 138.131.217.141 on interface eth0
[ INFO] [1567172953.929341359]: Found address 160.69.69.100 on interface eth1
[ INFO] [1567172953.929347608]: using 160.69.69.100 as the TX interface for IPv4 UDP multicast
[ INFO] [1567172953.929496412]: constructor complete
[ INFO] [1567172953.934056092]: Advertising the /calibrate_fingers service
[ INFO] [1567172953.934409093]: Advertising the /initIMUCal service
[ INFO] [1567172953.934811614]: Advertising the /saveIMUCalData service
[ INFO] [1567172953.935211639]: Advertising the /loadIMUCalData service
[ INFO] [1567172953.935574027]: Advertising the /refreshIMUCalData service
[ INFO] [1567172953.935925780]: Advertising the /calibrate_tactile service
[ INFO] [1567172953.936307738]: Advertising the /set_tactile_threshold service
[ INFO] [1567172953.936317297]: Entering main reflex_driver loop...
[INFO] [WallTime: 1567172956.142841] Starting up the hand
[INFO] [WallTime: 1567172956.205770] ReFlex hand has started, waiting for commands...
[ INFO] [1567173001.059249367]: Beginning finger calibration sequence...
[ INFO] [1567173001.145366764]: Step fingers inwards: 0+6 0+6 0+6 0+0
[FATAL] [1567173001.145437963]: ERROR! Encoder malfunction, prevented motor catastrophe.
Please check finger connections!
[ INFO] [1567173001.155665171]: Have a nice day
*** stack smashing detected **: /home/roboticlab14/catkin_ws_righthand/devel/lib/reflex_driver2/reflex_driver_node2 terminated
================================================================================REQUIRED process [driver_node_0-2] has died!
process has died [pid 21835, exit code -6, cmd /home/roboticlab14/catkin_ws_righthand/devel/lib/reflex_driver2/reflex_driver_node2 eth1 __name:=driver_node_0 __log:=/home/roboticlab14/.ros/log/dcdbd7a0-cb2c-11e9-aeb7-7085c28f82c2/driver_node_0-2.log].
log file: /home/roboticlab14/.ros/log/dcdbd7a0-cb2c-11e9-aeb7-7085c28f82c2/driver_node_0-2
.log
Initiating shutdown!

[reflex_takktile_hand2-3] killing on exit
[driver_node_0-2] killing on exit
[recorder-1] killing on exit
shutting down processing monitor...
... shutting down processing monitor complete
done`

Edit:
The motors are working for the fingers and the preshape. I have to put the string under tension. So position finger 1: 1.0
position finger 2: 3.5
position finger 3: 1.5
preshape: already at the angle pi/4 when set at zero on RQT.

Edit:
This is the function that is creating the error:
calibrate_fingers = rospy.ServiceProxy('/reflex_takktile2/calibrate_fingers', Empty)
calibrate_fingers()

If I calibrate with : calibrate_tactile()... it doesn't fail.

Maybe the encoders don't work ? But Why ?

@pragathip
Copy link

Are there any updates on this issue?

@amirghalamzan
Copy link

@Deastan do you have any update on this issue?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants