#robotics | Logs for 2016-09-12

Back
[01:37:38] <mrdata> i want these chairs adjusted slightly, http://newatlas.com/prodrone-armed-drone/45351/?li_source=LI&li_medium=default-widget
[01:39:02] <mrdata> https://www.youtube.com/watch?v=T6kaU2sgPqo
[03:08:25] <LiohAu> anybody used ROS with an IMU ?
[03:09:04] <veverak> nope, just checked it
[03:09:16] <veverak> afaik there are plenty of nodes for that ?
[03:09:47] <LiohAu> veverak: yes, the one I use works
[03:09:54] <LiohAu> but I don't know if it is configured correctly
[03:10:10] <LiohAu> because in rviz, when I use the IMU plugin, it shows an arrow pointing upward
[03:10:47] <LiohAu> the arrow moves if I rotate the IMU, so communication is ok... but I don't know if that arrow should be pointing upward or not
[03:11:31] <veverak> arrow should be data from acc
[03:11:48] <veverak> so practically, there should be 9.8g arrow upward? :)
[03:11:50] <veverak> (gravity here)
[03:12:40] <LiohAu> so this is a gravity vector that the IMU shows?
[03:12:46] <LiohAu> if so, that makes sense ok
[03:13:03] <veverak> no, it's accelerator arrow it shows
[03:13:39] <LiohAu> ok
[03:13:44] <veverak> and on planet earth, every accelerator that is not moving should show you readings that correspond to gravity
[03:14:03] <LiohAu> ok so it's working :)
[03:14:11] <LiohAu> first time I use an IMU :P
[03:14:39] <LiohAu> also, since you seem to be better than me with ros, any idea of what could be happening here : https://www.dropbox.com/s/gxdqrfmn0eun59n/laser.mov?dl=0 ?
[03:15:25] <veverak> not sure
[03:15:29] <veverak> 0 experience with lasers
[03:15:31] <veverak> :D
[03:15:38] <LiohAu> ok ^^
[03:15:39] * veverak used imu before for a while outside of ros
[03:15:57] <LiohAu> I think one of the transform is being published differently
[03:16:44] <LiohAu> probably 2 nodes publishing odom differently.
[03:22:33] <veverak> http://wiki.ros.org/robot_localization
[03:22:36] <veverak> this looks interesting
[03:25:11] <veverak> naaah
[03:25:15] <veverak> need to read about odometry
[03:25:17] <veverak> :)
[03:27:38] <LiohAu> veverak: I use this node already
[03:28:04] <LiohAu> actually, I added this node yersteday, and I think it is the one responsible of my issue
[03:28:18] <veverak> yeah, it looks like little bit tricky to setup
[03:28:22] <veverak> or, complex to setup
[03:28:31] <LiohAu> if my IMU is twisted horizontally
[03:28:45] <LiohAu> I guess that I will get a twister map, no?
[03:28:49] * veverak goes to figure out how he may be able to generate odometry messages
[03:28:50] <LiohAu> twister*
[03:28:58] <LiohAu> veverak: don't you have encoders?
[03:29:03] <veverak> LiohAu: nope
[03:29:06] <veverak> LiohAu: and especially
[03:29:09] <veverak> don't have wheels
[03:29:11] <veverak> :D
[03:29:16] <LiohAu> is it an UAV ?
[03:29:25] <veverak> 4-legged robot
[03:29:28] <LiohAu> oh ok
[03:29:33] <LiohAu> well you have visual odometry
[03:29:34] <LiohAu> nodes
[03:29:44] <LiohAu> but they are using more CPU i think
[03:30:48] <veverak> I've got camera
[03:30:57] <veverak> streaming to laptop took 25% of cpu
[03:32:02] <veverak> (rpi3)
[03:33:21] <veverak> anyway, I should have feedback from my servos on legs
[03:33:25] <veverak> there has to be way to generate odometry
[03:33:28] <veverak> :)
[03:35:33] <LiohAu> veverak: what kind of servo do you use? dynamixel?
[03:35:44] <veverak> LiohAu: PWM for now
[03:35:47] <veverak> but!
[03:35:59] <veverak> they fake odometry on itselfs with some math
[03:36:09] <veverak> (so I can write code that can also support dynamixel servos)
[03:36:43] <veverak> anyway, I need to figure out how to get odometry from joints feedbacks
[03:39:20] <veverak> I mean, from actual position of joints, I should be able to calculate where each leg is and from that I should be able to get odometry data
[03:39:37] <veverak> but I have to properly think about covariance
[03:47:44] <veverak> LiohAu: http://wiki.ros.org/robot_localization/Tutorials/Sensor%20Configuration have you read this properly?
[05:37:58] <Jak_o_Shadows> rue, what kind of force can your air muscles do?
[05:38:09] <Jak_o_Shadows> Like,they're tension devices yeah? What force?
[05:43:13] <mrdata> Jak_o_Shadows, look at the cross-sectional area and pressure
[05:43:47] <Jak_o_Shadows> Or make one and connect to a spring scale :P
[05:44:05] <mrdata> so, if you have 2 psi, say, and 1 sq inch cross section, then it does 2 lbs
[05:45:57] <Jak_o_Shadows> a) if you're going to use imiperial, please, for my sanity, use lbf and lbm.
[05:46:02] <Jak_o_Shadows> Also, surely it's not that linear
[05:48:24] <mrdata> a linear actuator would indeed be linear
[05:50:29] <JesNe> Yeah, so the "linear" in "linear actuator" PROBABLY (possibly, maybe?) refers to the direction of travel.
[05:50:44] <JesNe> Not whether the control signal is linear.
[05:50:57] <JesNe> Like, 5kPa is 10N => 10kPa is 20N
[05:52:25] <mrdata> well, pascals are newtons per square meter. so 5kPa is 5000 N / m^2. if you want that to be 10N then your area will be 0.002 m^2 or about 20 cm^2
[05:53:45] <mrdata> which is a cylinder about 5.0 cm dia
[05:54:45] <mrdata> your pressure will be regulated up the line
[05:55:51] <mrdata> so you could in fact raise it to 10kPa for a stronger lift
[05:56:07] <mrdata> and yes that relationship is linear
[05:59:38] <JesNe> Air muscles are not perfect cylinders
[06:00:02] <mrdata> thats details
[06:00:24] <mrdata> specific to manufacturer, etc blah blah
[06:01:05] <JesNe> Sorta one of your details that buggers up your control theory
[06:01:15] <mrdata> so with losses you get approximates, which are still linear
[06:01:36] <mrdata> i think youre just trolling
[06:05:29] <mrdata> seems so
[07:02:00] <LiohAu> mrdata, Jak_o_Shadows: are there any project using hybrid actuator : classic DC motor + air muscle ?
[07:03:36] <mrdata> LiohAu, off the top of my head i dont know of any
[07:03:53] <mrdata> but they likely exist
[07:04:47] <Jak_o_Shadows> I think the interesting thing is where you put your sensor.
[07:05:08] <Jak_o_Shadows> Like, if you're controlling force, why not just measure force? Instead of pressure.
[07:05:15] <Jak_o_Shadows> Of course, the sensors likely cost more
[09:23:12] <rue_house> mrdata, air muscles do not work like sylinders, the forces are much higher than pressure * cross sectional area
[09:25:21] <rue_house> the easiest way to measure force on an air muscle is to measure the pressure
[09:27:10] <rue_house> hmm I had a dream that I got ahold of a lost alien drone, and they were trying to get it back from me
[14:24:11] <mrdata> rue_house, if "the easiest way to measure force on an air muscle is to measure the pressure" then isnt that still linear?
[14:24:43] <mrdata> ok i found a datasheet, https://www.shadowrobot.com/wp-content/uploads/2012/11/datasheet_30mm_sam.pdf
[14:43:25] <mrdata> dynamic characteristics, page 7
[16:25:37] <z64555> blah, this is so stupid. I have to doctor up some old .jpg
[16:25:56] <z64555> *old .jpg's because I don't have access to the original files that made them.
[16:40:26] <Snert_> after it's been through about 2 people with resizing and cropping it's a lost cause!
[16:40:36] <veverak> :D
[18:53:05] <rue_house> mrdata, I'v not checked to see if the pressure/force is lienar or not
[18:53:24] <rue_house> I have data for force/pressure at some points
[18:56:37] <z64555> pressure of a fluid is most certainly nonlinear
[18:57:39] <rue_house> I dont care about the lienarity tho
[18:58:05] <rue_house> the loads will be so nonlinear that it dosn't matter
[18:58:28] <z64555> not because of the relationship between fluid density and pressure, but rather the tendancy for the fluid to change temperature during operation
[18:58:41] <rue_house> with the counteracting muscles, I can change the damping factors, so I can have a system monitor the movement for stability and adjust
[18:58:45] <z64555> ...thats about all I remember, sadly
[18:59:09] <rue_house> it dosn't matter, there are lots of factors that make everything varry all over the place
[18:59:26] <rue_house> in the end, its being controlled by an operator that compensates anyhow
[19:05:05] <rue_house> oops
[19:05:29] <rue_house> oops, too much aliexpress, racked up $450 on the credit card
[19:05:45] <rue_house> I recon thats 100x $4.50
[19:05:46] <veverak> :)
[19:13:29] <rue_house> I have a pressure sensor set now
[19:13:36] <rue_house> used by tiny26 adc streamer
[19:14:13] <rue_house> the sensors are 15psi (good to 20 tho) and it has 2 channels for generic analog inputs
[19:14:38] <rue_house> that should give me the pressures, a feedback position, and maybe a control position if i want it
[20:01:06] <Tom_itx> rue_house that blows your alloted robotic budget
[20:01:35] <rue_house> its not project alloted
[20:01:46] <rue_house> its stock and fun
[20:10:50] <justanotheruser> is there a good online guide explaining the mechanics and design of different types of robot hands
[20:11:40] <justanotheruser> and the arm of course
[20:12:25] <justanotheruser> hmm, found something, it may be too watered down scanning it http://www.societyofrobots.com/robot_arm_tutorial.shtml
[20:54:12] <Snert> yeah, no math until I have something that moves.
[20:54:27] <Snert> I'm not concerned about weight of the parts.
[20:54:53] <Snert> they will be made of CF and/or popsicle sticks. Prolly couldn't get much lighter.
[20:55:53] <Snert> later on when I go back for a re design I'll do a little math at times.
[20:56:34] <Snert> so yea, that article was too devoid of actual build technique.
[23:27:04] <rue_house> hmm link dosn't look like its really got much usefull information,
[23:27:18] <rue_house> lots of stuff for school kids tho
[23:39:27] <rue_house> so, how tight does the timing have to be on a solinoid driver
[23:39:38] <rue_house> more than is reasonable to operate it via serial?
[23:44:23] <rue_house> oh dear, I wrote the servomuscle code in 2011
[23:48:41] <rue_house> intesrsing
[23:48:46] <rue_house> slow enough to use software pwm
[23:52:34] <rue_house> void initTimer() {
[23:52:35] <rue_house>
[23:52:35] <rue_house> TCCR1B = (1<<WGM12) | 0x01;
[23:52:35] <rue_house> TIMSK = (1<<OCIE1A);
[23:52:35] <rue_house> OCR1A = 0x80;
[23:52:35] <rue_house>
[23:52:37] <rue_house> }
[23:52:56] <rue_house> I think that its running at 16Mhz
[23:53:57] <rue_house> 16 bit
[23:55:02] <rue_house> tccr1b
[23:55:11] <rue_house> I set CS10
[23:55:26] <rue_house> so its 16Mhz
[23:55:52] <rue_house> 24Hz
[23:56:12] <rue_house> sounds about right
[23:56:19] <rue_house> but 16Mhz pwm resolution, hmm