#robotics Logs

Jun 07 2015

#robotics Calendar


03:01 wolfmanjm deshipu: I have a question about your tote code... the leg commands xyz are they relative to the center of the bot or relative to the leg? Looks like they maybe relative to the top servo.
04:28 Martin90 anybody here familiar with line follower robot ?
04:28 Morus vaguely
04:29 Orpheon I've made a mindstorms one once, long ago, so sort of
04:37 Martin90 I am making my won on atmega
04:37 Martin90 own*
04:37 Martin90 but have some difficulties with 90 dig angles and even smaller
04:37 Jak_o_Shadows How many sensors?
04:37 Martin90 4
04:38 Martin90 3 in row and one aove
04:38 Jak_o_Shadows Hmm, good
04:55 deshipu wolfman: ayup, they are relative to where the leg begins
04:55 wolfmanjm thanks :)
04:55 deshipu that lets me avoid some calculations
04:56 deshipu only the rotate command rotates around the center of the robot
04:56 wolfmanjm deshipu: and the BASE value is that from the center of the robot to the first joint?
04:57 deshipu yes, precisely
04:57 deshipu maybe I should make a diagram
04:58 wolfmanjm ok thanks, I'm refactoring it all into object oriented c++ so there is a leg class etc, makes it easier for me to keep data encapsulated :)
04:58 deshipu awesome
04:59 deshipu have you built the robot already?
04:59 wolfmanjm yes I had that built some time ago, it is a different type of quad to yours, but I think the motors do basically the same things at the joints
05:00 wolfmanjm https://flic.kr/p/pkcwTy
05:00 deshipu yes, it's the same configuration
05:01 wolfmanjm (That's upside down"
05:01 deshipu even if the configuration was different, you would only have to modify the IK function
05:01 deshipu therest should work
05:01 deshipu I had that code used on a mammal-like robot and it worked :)
05:02 wolfmanjm so far I print the angles out (it is running under linux for debugging, eventually it'll run on the edison)
05:02 deshipu by the way, there is also a Python version of that code
05:02 deshipu slightly better organized
05:03 Jak_o_Shadows Where was your code?
05:03 wolfmanjm oh ok... I'm not too fond of python but that woul drun on the edison directly
05:04 wolfmanjm So looking at you IK diagrams it looks like Y runs into the body and X runs parallel to the body, but when I move in Y that would mean the hip should not move but it does
05:04 deshipu https://bitbucket.org/thesheep/pkubik/src
05:05 deshipu wolfmanjm: z is vertical, x and y are horizontal, hip will move both with x and with y changing
05:05 deshipu wolfmanjm: the "0" position is with the leg at 45° from the body
05:05 wolfmanjm hip is the top joint?
05:06 deshipu yes
05:06 Jak_o_Shadows oh, you have a closed form solution for it
05:06 Jak_o_Shadows nice
05:06 wolfmanjm oh I see then why X and Y both move the hip...
05:06 deshipu base - hip - femur - knee - coxa - ankle - tibia
05:07 deshipu Jak_o_Shadows: otherwise the arduino would never manage it :)
05:08 Jak_o_Shadows I did some robot arm IK stuff once, but I used matrix notation and didn't bother figuring out a closed form solution
05:09 wolfmanjm I think the edison has a bit more power than an arduino ;) probably even has FPU :)
05:09 Jak_o_Shadows also, I didn't have each section as it's own class.
05:09 wolfmanjm and duak core
05:09 wolfmanjm dual
05:09 deshipu wolfmanjm: still nice to be able to use that power for other things than IK
05:09 deshipu like image processing
05:10 Jak_o_Shadows oh yeah, if you can work out a closed form solution, go for it every time
05:10 wolfmanjm well it is running linux so it is still not realtime, but that shouldn't really matter for this application
05:10 deshipu wolfmanjm: I have use that python code on a VoCore talking to the arduino just to tell it the angles of the servos
05:11 wolfmanjm I have a 16 channel servo controller hooked direct to the edison via I2C so no arduino in this setup
05:11 deshipu yeah, but the pro mini makes a very cheap servo controller :)
05:11 wolfmanjm but I already blew up one edison ;( it gets expensive after a while
05:11 deshipu as long as you only need 12
05:12 deshipu it's $2
05:12 wolfmanjm yea I have several of those, but I like the wifi control I have with the edison ;)
05:12 deshipu well, one of my plans is an ESP8266 shield
05:12 deshipu for the Tote
05:12 wolfmanjm If I blow up the second edison then it'll be back to the mini pro :)
05:13 deshipu with micropython on the esp
05:13 wolfmanjm yea I have one of the small ESP8266, seems to work well enough
05:13 deshipu you only need the serial
05:13 wolfmanjm mine is running lua
05:14 deshipu I have one robot using that too
05:14 deshipu but that one is a biped
05:14 wolfmanjm but I haven't done much more than setup a simple web server on it
05:14 deshipu https://hackaday.io/project/3736-bob-biped-robot
05:14 wolfmanjm edison is noce as I cna develope entirely on my linux workststion initially
05:15 deshipu yeah, I did that with that python code too, with a serial cable connected to the robot
05:16 deshipu I think it's the most convenient way to develop
05:17 deshipu then, when I had the python code working, I just rewrote it into C
05:24 wolfmanjm I'll post the C++ refactor to github once it works, it is pretty much identical so far, just encapsulates the leg data and calls a Servo class which can be a simple printf :)
05:25 wolfmanjm so there is a Leg instantiation for each leg, you pass in where the leg is and which channel of the servo it is on
05:25 wolfmanjm pretty standard stuff
05:26 veverak btw: using anything to change parameters when robot is online?
05:26 verak just have it in
05:26 veverak wifi app on tablet with settings
05:30 deshipu veverak: like what?
05:30 deshipu veverak: its legs suddenly grow?
05:30 deshipu so far I only had a quadruped turn into a triped
05:30 deshipu by tearing off one of the legs
05:31 veverak I suppose there is not much for your robot
05:31 deshipu I want to experiemnt with different configuration
05:32 deshipu a gorilla-like one
05:32 veverak but things like: reversing servos, changing max power for motors, sending debug values ...
05:32 veverak :)
05:32 deshipu with two short legs and two long "arms"
05:32 deshipu veverak: well, I have a python console for that stuff
05:41 veverak true to that
05:46 deshipu I love this new home, the hot water from the tap is hot enough to brew green tea
05:46 deshipu no more waiting for the kettle
05:47 Jak_o_Shadows hot water on demand is a wonderful thing
05:48 veverak deshipu: closer or far away from our borders? :)
05:48 verak is in Ostrava for few months, maybe it's worth going to visit some hacker
06:00 deshipu veverak: Zürich
06:01 veverak ouch :D
06:02 deshipu why ouch?
06:02 veverak too far away
06:03 deshipu it's an hour of flight anywhere anyways
06:06 veverak :D
08:33 ssword2 ownders whats the highest segment count on a display for a single 'u
08:33 ssword2 wonders
08:34 password2 whoops , wrong channel
08:40 LiohAu deshipu: familiar with solidworks by chance?
09:10 JT-Shop yes
11:58 rue_bed how about 35?
13:19 rue_house well, I didn't get any servos made yesterday
13:48 deshipu rue_house: that's a shame
13:48 deshipu rue_house: there is always tomorrow
14:03 rue_shop3 hmm I wonder if I shoudl use a 10 turn pot on this home brew servo
14:03 rue_shop3 0-3600 degrees
14:06 SpeedEvil why not an encoder?
14:18 rue_shop3 oooh, I'll use a 10 turn pot on the second to last output gear
15:56 veverak I have to praise myself
15:56 veverak https://scontent-vie1-1.xx.fbcdn.net/hphotos-xta1/v/t34.0-12/11269391_1020318761312842_1633279727_n.jpg?oh=06e4e0846bd08c71680078b838e2e6fe&oe=55772DB8
15:56 veverak that's just 70% of cables that were there
15:56 veverak and previous state was "one big ball of cables"
19:41 rue_shop3 SpeedEvil, sorry, because its too much extra trouble to set up and use an encoder, with a pot, its just filter, adc and your done
21:40 moon rue
22:46 rue_shop3 yay I made a gearbox
22:46 rue_shop3 china gears and 3d printed case
23:02 Casper rue_shop3: you cheated! you should have 3d printed all! :D