#robotics Logs
Aug 14 2017
#robotics Calendar
12:45 AM noproto: i think i finished my first full robot build :)
12:48 AM rue_more: heh
12:48 AM rue_more: what is it?
12:48 AM rue_more: Tom_L, did you get that?
12:50 AM noproto: its a treaded robot with a joule 570x, realsense zr300, arm, and 20000mAh battery. it fell short of the mobility i wanted though
12:50 AM noproto: it has trouble on carpet and gives up on life at stairs
12:50 AM noproto: i want to give a rocker-bogie design a shot with brushless dc motors
12:54 AM noproto: the entire codebase is Python which is nice, everything attached is modularly loaded and has a simple interface
12:54 AM rue_more: huh
12:55 AM noproto: like i program a module in a directory for limbs, like limbs_arms.py and it'll be auto-loaded on start
01:18 AM rue_more: Tom_L, http://ruemohr.org/~ircjunk/images/p1090270.jpg
01:19 AM rue_more: the entire right hand circuit is a 5V regulator and driver for the opto, my function generator cant drive it!
01:25 AM Snert: func gen can't drive opto?
01:27 AM Snert: signal making it throo the 2n2222 (or whatever) device?
01:27 AM rue_more: I know
01:27 AM rue_more: its got a 600ohm output
01:27 AM rue_more: I used a 2n7000 cause then I didn't need a base resistor
01:28 AM rue_more: the resistor thats in there on the gate, is just so I can clip onto something :)
01:28 AM Snert: i has to be in the drive current for the opto I would think
01:28 AM rue_more: I should make a better fn gen sometime
01:28 AM Snert: where the problem lies, I mean.
01:29 AM rue_more: 8.5mA
01:29 AM rue_more: fn gen cant do it
01:29 AM Snert: that's why the mosfet, right?
01:30 AM rue_more: yup
01:30 AM rue_more: but *point* is that the relay on the left is being driven *DIRECTLY* by the opto
01:30 AM rue_more: I have it set to 2Hz, it can do that for 24 hrs to make sure its ok for tom
01:31 AM Snert: o. so it's not an input side driving problem.
01:31 AM Snert: it's an output side problem.
01:32 AM rue_bed: the fn gen drives the 2n7000 that drives the opto that drives the relay
01:32 AM Snert: and opto can't drive relay. So it's opto output side problem.
01:32 AM rue_bed: the *point* is that the relay only pulls 20mA and the opto can drive 50mA, you can drive a 24V relay from the opto without and other driver transistors
01:33 AM rue_bed: the opto IS driving the relay
01:33 AM rue_bed: and its fine
01:33 AM rue_bed: and you can drive the opto fine with a normal logic curcuit
01:33 AM rue_bed: my FUNCTION GENERATOR cant drive an opto
01:34 AM Snert: doesn't func gen drive sn7000?
01:34 AM rue_bed: yes, because it cannot drive the opto directly
01:35 AM Snert: since the 2n7000 drives the opto, where is the need to have the func gen drive directly?
01:35 AM Snert: guess there isn't one.
01:35 AM Snert: minimizing the parts coiunt :)
01:36 AM rue_bed: casue if I post an image of an opto driving a relay directly, and I have a circuit to buffer the function generators output, people will get confused and generate long pointless conversations
01:36 AM Snert: and then the original poster will get annoyed.
01:37 AM Snert: cause his circuit don't worketh too plenty good.
04:36 AM mumptai_ is now known as mumptai
01:32 PM i-make-robots: hey all. I got a math problem. https://www.instagram.com/p/BXwEGZUgVmq/?taken-by=imakerobots
01:32 PM i-make-robots: also if any of you care, I added THOR robot support to Robot Overlord. https://www.instagram.com/p/BXi0Ci4gLqb/?taken-by=imakerobots
01:40 PM anniepoo: hi
01:41 PM anniepoo: whats the math problem?
01:43 PM anniepoo: So, where's the math expressed?
01:45 PM anniepoo: Did you compensate for the timing belts ending at the square effector plate?
01:46 PM anniepoo: if it's skipping, the plate's not where you think it is
01:47 PM anniepoo: if the plate's not where you think it is, the redundant axis will be off
01:51 PM anniepoo: and fwiw I came across your site before, and, being in the US, thought 'Man! $398 for a cad file! What drug's this guy on?' Just figured out that's 398 Canadian dollars Bet fixing that would increase sales
02:28 PM i-make-robots: the math is expressed in the IK() method in the firmware.
02:28 PM i-make-robots: i'm compensating for the plotter and the motors.
02:29 PM anniepoo: kk
02:29 PM i-make-robots: so in a machine 60.2cm wide, the motors are 4.5 wide and the plotter is 6 wide, for (Px -4.5-3) to one corner
02:29 PM i-make-robots: effectively i'm subtracting teh motor and the plotter to treat the plotter as a point.
02:30 PM anniepoo: offsetting for the diameter of the timing pulley?
02:30 PM i-make-robots: what hurts isn't the CAD/USD difference. It's the shipping costs too much from here.
02:30 PM i-make-robots: timing pulley diameter is irrelevant. i measure from the edge of the motor mount where the belt is trapped between two idlers.
02:31 PM i-make-robots: well, pulley diameter only matters when counting belt moved per-step.
02:31 PM anniepoo: no, I'm saying you have a design problem in your website. As a US person, I read that as I give you $400 US, in return for which you email me a cad file
02:32 PM i-make-robots: i understood what you meant.
02:32 PM anniepoo: kk - you can see, that made me think you were unrealistic, so I didn't explore any more.
02:32 PM i-make-robots: i can't help that a small % of people are too us-centric to understand currency conversion. :T i see a lot of orders get to the checkout page and stop because the CAD>US shipping is $30 where US>US is $5.
02:33 PM anniepoo: sure
02:33 PM i-make-robots: still, I will take it under advisement and see if we can update our theme to show something better than CAD. maybe highlight we're a canadian company or something.
02:34 PM i-make-robots: thanks for the tip.
02:34 PM anniepoo: no, listing prices in canadian makes sense of course - just CAD is ambiguous in this context
02:34 PM anniepoo: maybe spell out Canadian
02:35 PM anniepoo: there's a 'zig' on one side
02:36 PM anniepoo: ok - one idea - write the actual lengths you think the belts are at out to file somehow
02:36 PM anniepoo: then write a little simulator
02:37 PM anniepoo: also, try manually 'helping' the belt that's loose, and see if it behaves correctly
02:37 PM anniepoo: that is, is it the loose belt, or something else?
02:38 PM i-make-robots: i've done that.
02:38 PM i-make-robots: they match
02:38 PM i-make-robots: graphed the output in excel and compared with the simulator. samesies.
02:38 PM anniepoo: same issue?
02:38 PM anniepoo: so it's math
02:38 PM i-make-robots: same results. numbers are within tolerance.
02:39 PM i-make-robots: sampling rate is not the same on both, but curves match.
02:39 PM anniepoo: does the excel have that dip in the side?
02:39 PM i-make-robots: ?
02:39 PM i-make-robots: what "dip in the side"?
02:39 PM anniepoo: you're driving the robot in a rectangle
02:40 PM anniepoo: the video shows on left side a distinct 'zigzag' halfway up
02:40 PM anniepoo: might try drawing a square spiral.
02:40 PM i-make-robots: i asked the IK() of the firmware to spit out the math results as it calculates. I compared to the simulator. I also compared to the real-time emulator I wrote in processing. All three seem ok. None explain the dip.
02:41 PM i-make-robots: the dip is the symptom of the mistake in the math.
02:42 PM anniepoo: all 'seem ok' as in draw a rectangle? Then the issue's mechanical.
02:45 PM i-make-robots: ... the math is wrong somehow. there's a difference between the real machine and the math that we're not seeing.
02:45 PM i-make-robots: the repeatable accuracy of the system is fine, i've run the same code with dfifferent ik on makelangelo and it can run for days with no lost steps.
02:45 PM anniepoo: is the code posted somewhere?
02:45 PM i-make-robots: the loose belt tells me the motors are turning too far, which means they must ALSO be pulling too hard at times, which is how it skips and loses steps.
02:46 PM i-make-robots: https://github.com/MarginallyClever/Makelangelo-firmware/tree/dev/makelangeloFirmwareRumba
02:46 PM i-make-robots: you'll have to set machine type ZARPLOTTER in configure.h
02:46 PM i-make-robots: instead of POLARGRAPH2
02:47 PM anniepoo: hmm
02:48 PM anniepoo: have you tried plotting a square spiral?
02:48 PM anniepoo: maybe it's an underflow?
02:51 PM i-make-robots: i just recounted the pulley teeth in case i had one of those nasty 18-tooth instead of the usual 20-. they're good.
02:52 PM i-make-robots: what do you mean, "underflow"?
02:53 PM anniepoo: https://en.wikipedia.org/wiki/Arithmetic_underflow
02:54 PM anniepoo: this often happens when you're doing something like Y = A / B * X
02:55 PM anniepoo: You might try just having the unit let out, say, 10cm of belt, then manually measure that's how much it let out
02:55 PM i-make-robots: no. this machine is smaller than the makelangelo robots which do not experience underflow with bigger numbers. individual motors moving back and forth move expected amounts.
02:56 PM i-make-robots: i've had makelangelos as big as 8x8' and as small as this, all ok.
02:57 PM anniepoo: have you tried drawing the square over and over in the same run?
02:57 PM anniepoo: maybe some bias is appearing in some FP calculation
02:58 PM anniepoo: 8cD I'm just trying to help - debugging is a process of making guesses and then finding a way to validate them
03:00 PM i-make-robots: i get that. you have to work through the guesses I've already made, and 2x checking my work means I didn't miss anything.
03:02 PM i-make-robots: thanks for taking the time.
03:02 PM i-make-robots: not many people i could bounce this off.
03:02 PM anniepoo: yup 8cD
03:03 PM i-make-robots: https://github.com/MarginallyClever/zarplotter/
03:03 PM i-make-robots: simulations
03:05 PM anniepoo: have you tried driving the robot around the square backwards?
03:06 PM anniepoo: hey, sorry, I've got to go deal with stuff in shop
03:49 PM i-make-robots: direction irrelevant - the same effect is produced in reverse.
03:49 PM anniepoo: hmmm
03:49 PM i-make-robots: and it's wrong by the same amount at the end (give or take how the belt skips)
03:49 PM i-make-robots: more precisely, the error is mirrored.
03:51 PM anniepoo: I'd be trying drawing some different patterns - a grid of 3cm squares, a big grid
03:58 PM i-make-robots: I don't get how that will narrow down what is causing the problem.
07:34 PM Tom_itx is now known as Guest24493
07:44 PM Snert_: iot lock droids gone bonkers
07:44 PM Snert_: https://arstechnica.com/information-technology/2017/08/500-smart-locks-arent-so-smart-anymore-thanks-to-botched-update/
07:46 PM Snert_: pretty scary to let "them" update your stuff.
08:20 PM rue_more: Tom_itx, its still going
08:20 PM rue_more: thats over 100k cycles
08:20 PM rue_more: did you get the notes I sent ya?
08:38 PM rue_more: I had _4_ packages arrive from china today
08:38 PM rue_more: HOW AWESOME IS THAT!!!!!
08:55 PM Wayward is now known as Trashpanda
10:32 PM razaz: quick question: I have this sonar sensor https://www.maxbotix.com/Ultrasonic_Sensors/MB1000.htm
10:33 PM razaz: when I connect it to an Uno over +5, Grd, and one analog on A0, I get an output printed to Serial, but it's always the same reading
10:33 PM razaz: no matter how far away an object is. The Uno is connected over USB to the laptop. Any thoughts why this is happening?
10:37 PM synja: razaz, try tapping the sonar sensor a few times if it's cheap, but most importantly, switch the pins away from 0 and 1
10:37 PM synja: trust me
10:38 PM razaz: what do you mean from 0 and 1?
10:38 PM razaz: @synja?
10:38 PM synja: switch A0 to D4 or something
10:38 PM razaz: aahh!
10:38 PM razaz: gotcha, ok trying that
10:38 PM synja: ;)
10:39 PM razaz: it's cheap. about 20 USD. Do you have recommenation for something better, but still moderate?
10:39 PM synja: no that's not cheap. i used hc-sr04s
10:39 PM razaz: ok
10:39 PM synja: they're horrible, but they're wicked cheap
10:40 PM razaz: btw the reading is over analog that's why A0
10:40 PM razaz: how would that work over D$?
10:40 PM razaz: D4?
10:41 PM rue_shop3: ouch and it was $40
10:41 PM rue_shop3: er $30
10:42 PM rue_shop3: where did you get the code thats running it?