jdelacroix / simiam

A MATLAB-based educational bridge between theory and practice in robotics.
http://gritslab.gatech.edu/projects/robot-simulator
Other
104 stars 52 forks source link

About the K3 robot’s firmware #5

Closed BlueBirdHouse closed 10 years ago

BlueBirdHouse commented 10 years ago

From your settings in the file “Khepera3 < simiam.robot.Robot”, you are using the robot with firmware < 3.0. And the Khepera III toolbox from “http://en.wikibooks.org/wiki/Khepera_III_Toolbox/” is not support the robot with firmware >3.0! The main problem is the Khepera_III_Toolbox try to read the PIC chip directly by the addresses but some have been charged during the KTeam Corporation’s upgrade. The KTeam’s workers said that the writer have left the school. So I think fix this bug is impossible. So, I have replaced all the low level functions in the Khepera_III_Toolbox by the KTeam Corporation’s libkorebot. So the writer’s wish:”The toolbox does not need the libkorebot and …..“ cannot be continued! But at last it works.

For the firmware > 3.0, there are the charging: (they have upgrade the encoder)

“The maximum reachable speed is 48’000 (= 333 mm/s old — 219 mm/s new) in open loop, and 43’000 (= 298 mm/s for old — 196 mms/s for new) in regulation mode. And the minimum is 2’000 (= 13.9 mm/s for old — 9 mm/s for new) with regulation control.”

So I think the “obj.ticks_per_rev = 4198;” obj.speed_factor = 4.558139535e-6; for firmware > 3.0

I know you have a TCP Server using the Khepera_III_Toolbox.

jdelacroix commented 10 years ago

I can add a flag to simiam.robot.Khepera3 for switching between the two firmwares (> 3.0 vs <= 3.0). I don't have a Khepera III with the newer encoders and firmware, so I can't do any testing. If you'd like, you can send me your version of the UDP server based on libkorebot. I can write a Java UDP client (see my 4555-sp13 branch) and have you test it on your K3s.