#robotics | Logs for 2016-10-08

Back
[00:01:05] <jesseg> orlock, the 400ct ones I got were $25.64 delivered for 3 of them, so $8.55USD each delivered
[00:01:20] <jesseg> so not free, but a lot less than $60 :P
[00:02:20] <rue_house> erm
[00:02:39] <rue_house> oh were is that link
[00:04:01] <rue_house> http://www.bushytails.net/~randyg/encoder/encoderwheel.html
[00:04:02] <rue_house> aha
[00:04:07] <rue_house> make yer own!
[00:06:56] <rue_house> http://www.bushytails.net/~randyg/encoder/encoderwheel.php?steps=64&bits=2&inr=150&bitr=40&spcr=0&bandgds=1&mkmask=1&maskf=25&maskbf=50&msteps=2&masteps=2&monehole=1
[01:26:05] <Snert> there's also a little ditty stand alone for windows that makes encoder wheels.
[01:26:42] <Snert> just wish it would layout in linear instead of circular.
[01:40:44] <jesseg> Snert, that shouldn't be too hard
[01:41:01] <Snert> I'm thinking a manual pixel edit.
[01:41:11] <jesseg> yeah with copy and paste that would not be too bad either
[01:41:21] <jesseg> are you thinking gray coding or whatever they call it?
[01:41:24] <Snert> with enuff time I can pixel edit absolute grey code.
[01:41:52] <Snert> just gotta "unfold" a wheel and follow the pattern.
[01:42:28] <Snert> mayve a vector thing so it would be easy to scale.
[01:42:33] <jesseg> it's real simple, each successive bit is twice the size of previous, and no two bits change on t he same boundary :P
[01:43:28] <Snert> yea, it's an easy pattern to discern when you look at a grey code wheel.
[01:43:37] <Snert> looks like a tree sorta.
[01:44:03] <Snert> with a repeated tree branch pattern.
[01:44:48] <Snert> problem is, it's gonna take a 1/2 rack of beer to get it done.
[01:49:01] <Snert> how about a pcb strip. nothing but a gerber file of drill holes for the gray code?
[01:58:52] <jesseg> drill holes?
[01:59:01] <jesseg> oh, slotted?
[01:59:10] <jesseg> are you thinking for optical reading, or finger reading?
[01:59:23] <jesseg> i.e. little contact fingers that slide on the PCB?
[02:01:54] <Snert> optical
[02:02:00] <jesseg> hmmmm
[02:02:32] <jesseg> what about using thin translucent fiberglass PCB (single copper layer) then have the pattern etched in the copper?
[02:02:38] <jesseg> a good light will shine right through
[02:04:01] <Snert> some of the detectors I been lookin' at come in a strip of 4 or more photodiodes
[02:04:18] <Snert> so kinda that direction.
[02:04:59] <Snert> would UV go through a transluctnt pcb like you said?
[02:05:19] <jesseg> hmm I dunno, but would break down the resin eventually, but why UV....?
[02:05:32] <jesseg> That is the wavelength that photo sensors are least sensitive to.
[02:05:44] <jesseg> IR would go through just fine though, and that would not damage the board.
[02:05:50] <Snert> iirc it was the freq spectrum of the emitters. but memory prolly fails me
[02:05:55] <jesseg> and it's the best detected by most phototransistors/diodes
[02:06:09] <jesseg> oh I bet it was IR. They are almost always IR
[02:06:14] <jesseg> yeah t hat'd be fine
[02:11:11] <jesseg> Snert, there's an 8 bit linear gray for ya : https://postimg.org/image/566rvm2a7/
[02:13:36] <jesseg> Snert, and actually, what I'd like to try is actually perhaps a 24 bit greycode then use a single color single line CCD sensor focused on it to decode it
[02:15:12] <jesseg> Basically, the first segment is half of the total length, and centered.
[02:15:41] <jesseg> Each successive row is half the length of the previous, and each segment is centered on the end of the previous row's segments.
[02:17:00] <jesseg> modern gerber format also supports filled polygons, so it'd be pretty easy to do it in the copper layer
[02:17:44] <jesseg> if you really want, I'll be glad to make a generator script in a couple weeks when I get back from vacation
[02:31:45] <jesseg> Snert, hahaha I see I missed the 0th bit. That should have been 9 bit, but I missed the big bar on the bottom.
[02:31:59] <jesseg> Otherwise, it's a mirror image and there is no difference between the right and left.
[02:32:06] <jesseg> just use half, and it'll be an 8 bit :P
[02:34:27] <Snert> or maybe use both halves but each half is a different parameter.
[02:34:46] <Snert> no wait I was thinking circular we're talking linear.
[02:35:01] <jesseg> yeah it would just mirror :P
[02:35:59] <anonnumberanon> Yay my first .elf compile by hand :)
[02:36:16] <anonnumberanon> NERD GALORE ON FRIDAY NIGHT MY DUDES
[02:36:34] <jesseg> Snert, here: https://postimg.org/image/nvei62sep/
[02:36:35] <anonnumberanon> May get a chance to put this USBasp to good use.
[02:37:06] <jesseg> congratulations anonnumberanon
[02:37:16] <anonnumberanon> heh
[02:37:18] <anonnumberanon> ty
[02:37:34] <anonnumberanon> now to avrdude it to a chip
[02:45:49] <Snert> jesseg: kool yep that's it.
[02:50:41] <Snert> http://i.imgur.com/WhBpupG.jpg
[02:51:03] <Snert> absolute to binary hardware converter. 10bit.
[02:51:55] <Snert> 1 set of LEDs displays graycode directly.
[02:52:13] <Snert> the 10 bar led shows binary, directly.
[02:54:02] <jesseg> Snert, cool
[02:54:55] <jesseg> Snert, here's the polygon coordinates for that 9 bit I drew up. Unfortunately it's in a non standard format, but the info is there. It's the x,y pairs for each corner of the blocks. https://paste.ee/p/X8Yhn
[02:55:39] <Snert> I'll use it to display an outside, independant, 3rd party view of whether or not the encoder is good and what the binary is. A test board to feed signals to an arduino.
[02:56:06] <Snert> Mr. arduino just needs to read the binary.
[02:56:14] <Snert> which is easy to do.
[02:56:49] <jesseg> how long is your linear encoder gonna be?
[02:57:23] <Snert> up in the air - really depends on how small I want the extensible forearm to be.
[02:57:37] <Snert> determined by the motors and gearing I can afford.
[02:57:40] <jesseg> oh cool, an extensible forearm
[02:58:53] <Snert> laid out horizontally on a plywood at first.
[02:59:06] <Snert> to avoid vertical stresses.
[02:59:23] <jesseg> Snert, you know you can also get those cheap digital calipers which have a nice capacitive type linear (relative) measuring system.
[02:59:27] <Snert> till I get the extensible bit worked out.
[02:59:31] <jesseg> Some of them may even have data output ports, not sure
[03:00:10] <Snert> yea mine does, just no docs or offering of a cable or wares did I see.
[03:00:28] <Snert> but truly I haven't dug too hard in that pile.
[03:00:28] <jesseg> lol yeah I've always wanted to connect up a scope and see what I get
[03:01:34] <jesseg> lol http://www.robotroom.com/Caliper-Digital-Data-Port.html
[03:17:33] <rue_house> http://www.thingiverse.com/thing:1814425
[03:17:48] <rue_house> there, I have invented the worlds simpelest printed thing
[03:20:16] <jesseg> well it looks authentic
[03:20:37] <jesseg> Good sens of humor too "If they are gonna make them out of plastic anyway..."
[03:20:41] <jesseg> Good night everyone
[03:23:57] <anonnumberanon> wow, does that work well?
[03:24:50] <anonnumberanon> rue_house, what programmer do you use? I'm trying to get usbasp setup.
[03:26:48] <rue_house> toms, and a mega32u2, and a usbasp, and a parallel port stk200
[03:27:17] <rue_house> that works just like the plastic ones, I'z surprized
[03:27:21] <anonnumberanon> can you check my avrdude command?
[03:27:29] <anonnumberanon> hang on im putting it together
[03:31:19] <rue_house> usbinstall:
[03:31:19] <rue_house> avrdude -c avrisp2 -P usb -p m328p -e -U flash:w:$(PRG).hex
[03:31:32] <rue_house> interesting, I dont think I even said it was an asp
[03:32:33] <rue_house> huh
[03:32:45] <rue_house> I'm sure that same line works for the asp
[03:33:28] <rue_house> 1am! gnight
[03:33:47] <anonnumberanon> avrdude -c usbasp-clone -b 19200 -p m328p /dev/ttyS0 -U flash:w:program.hex
[03:34:56] <rue_house> hu?
[03:35:02] <anonnumberanon> Mine is some kind of clone I think cause it's not in a plastic box. avrisp2 should be it? on mine it says USBASP V2.0, its just a long narrow board
[03:35:13] <rue_house> now I dont know
[03:35:22] <rue_house> is it just a cheap china usbasp?
[03:36:07] <anonnumberanon> it was kinda expensive I think a bit above 10 dollars
[03:36:27] <rue_house> ....???
[03:36:40] <anonnumberanon> from LC Technology
[03:37:03] <anonnumberanon> https://www.google.com/search?num=30&site=&source=hp&q=lc+technology+usbasp+v2.0&oq=LC+Technology+usb&gs_l=hp.3.0.0j0i22i30k1l6.1341.2999.0.4584.6.6.0.0.0.0.144.598.4j2.6.0....0...1c.1.64.hp..0.5.452.0.XmSyiohCgro
[03:37:15] <rue_house> so youpaid the most you could for the cheapest one out there?
[03:37:49] <rue_house> meh, try the line I used if yours dosn't work
[03:38:05] <Snert> that little machineshop is great. thx.
[03:38:26] <Snert> get lost in there for an hour
[03:38:37] <rue_house> https://www.aliexpress.com/item/USBasp-USB-ISP-3-3V-5V-AVR-Programmer-USB-ATMEGA8-ATMEGA128-New-10PIN-Wire-Support/2036402518.html
[03:38:45] <rue_house> I think thats what I got to see if it would work, and it did
[03:39:37] <rue_house> mine has shrinkwrap iirc
[03:39:43] <rue_house> it was like $2usd tho
[03:39:54] <anonnumberanon> ok
[03:40:09] <anonnumberanon> avrisp2 worked for that?
[03:40:24] <anonnumberanon> and then -P usb
[03:40:28] <anonnumberanon> what is that for?
[03:40:32] <rue_house> I think so, iirc, nomatter which usb programmer I connect, the same makefile works
[03:41:04] * anonnumberanon needs to go grap coffee
[03:41:11] <rue_house> wow, they are really keeping the us dollar stable durring this election
[03:43:18] <rue_house> awe, I thought I did IR recieving ont eh tiny13, but it was the tiny26
[03:46:04] <rue_house> I think I can make that work on a t13
[04:00:18] <anonnumberanon> avrisp2 seems to do the trick, now to connect a chip to it so it dont give me avrdude: stk500v2_ReceiveMessage(): timeout
[04:00:27] <anonnumberanon> (after coffee)
[04:35:16] <anonnumberanon> avrdude: stk500v2_ReceiveMessage(): timeout
[04:35:17] <anonnumberanon> sigh
[04:37:38] <anonnumberanon> ah.. rookie mistake
[12:15:23] <rue_house> OOOOOOOOOOOooooooooooo
[12:15:41] <rue_house> I just realized that I can make a tiny13 into a 4 channel serial servo controller
[12:15:48] <rue_house> fer little projects
[12:15:55] <rue_house> I think I can
[12:15:58] <rue_house> I have to think more
[12:16:05] <rue_house> might need to be tiny85
[12:27:47] <rue_house> ok I think I ported the IR reciever code to the tiny13
[12:28:00] <rue_house> I had to change like a whopping 6 lines of code!
[12:29:02] <jesseg> wow you better be careful there, don't want to overtax your coding skills
[12:29:03] <jesseg> :D
[12:29:25] <jesseg> I used to have a co-worker who'd tell me "You stay away from that wheel barrow Jesse, you don't know nothin' about machinery..."
[12:31:40] <rue_shop3> yea rlly
[12:31:48] <rue_shop3> might have to call it a day, take a nap
[12:31:56] <rue_shop3> heh
[12:32:31] <jesseg> lol
[12:43:19] <rue_shop3> ok lets see
[12:43:21] <rue_shop3> to test it
[12:43:25] <rue_shop3> I need...
[12:43:29] <rue_shop3> an IR reciever
[12:43:33] <rue_shop3> a 5v supply
[12:43:38] <rue_shop3> an led, and resistor
[12:43:41] <rue_shop3> and a tiny13
[12:43:48] <rue_shop3> .. and a breadboard
[12:44:03] <rue_shop3> well, obviously this is going to be a major undertaking
[16:19:02] <rue_shop3> YES, it works
[16:19:12] <rue_shop3> hardest part was working out how fast the avr is running
[16:19:16] <rue_shop3> 9.6Mhz/8
[16:39:59] <rue_shop3> how to know you have battieries around that are too old: THEY SAY RADIO SHACK ON THEM
[16:40:06] <rue_shop3> why hasn't this thing leaked yet?
[17:17:15] <crankslider> A new Russian robot: https://www.youtube.com/watch?v=fKod77aEKlg https://www.youtube.com/watch?v=xobj_vYNKE4
[17:23:25] <rue_shop3> huh, the only remote I can get working is the one I wrote the code for, all the others encode the buttons wrong
[17:23:27] <rue_shop3> hmm
[17:43:18] <JT-Shop> what would make the first layer leave voids between the strands of filament but the rest of the layers seem good?
[17:44:55] <deshipu> goblins
[17:45:15] <deshipu> or possibly leprechauns
[17:45:28] <JT-Shop> yea that's what they said over in #reprap
[17:54:25] <SpeedEvil> JT-Shop: the print origin is too damned high?
[17:55:13] <JT-Shop> let me watch what level it starts at, just warming up to try and print something
[17:58:37] <JT-Shop> first layer started at 0.3mm, I'm using slic3r and pronterface
[18:00:07] <Tom_itx> i send ppl over from #reprap under the pretense that you guys aren't dipshits.... so don't be!
[18:00:42] <JT-Shop> lol
[18:00:48] <Tom_itx> :D
[18:02:03] <Tom_itx> there's way more than enough of that over there
[18:07:56] <Tom_itx> JT-Shop is that still the chinese filament?
[18:08:29] <JT-Shop> yea, trying to print a hub for my atomic spool
[18:08:49] <Tom_itx> i probably wouldn't worry too much until you get the good stuff goin
[18:09:29] <Tom_itx> make the first layer print a bit lower?
[18:09:47] <JT-Shop> right now the nozzle is covered in pla so I need to clean it off
[18:13:27] <Tom_itx> what firmware did you end up with? marlin?
[18:27:13] <JT-Shop> yea, funny the slightly older version of marlin that won't compile on the latest arduino lol
[20:14:52] <rue_house> rememeber the next spool you get will have a different sized hub
[20:18:31] <rue_house> hahah
[20:18:35] <rue_house> that russian video
[20:18:40] <rue_house> its probably all puppeted
[21:37:29] <rue_bed> hmm
[21:38:00] <rue_bed> if I write servo code, that uses a countdown interrupt to terminate the pulse
[21:38:18] <rue_bed> and the irq just writes a zero to the output port
[21:38:54] <rue_bed> then it probably wouldn't be too long as to throw off a main loop that did serial recieving
[21:38:58] <rue_bed> hmm
[21:44:06] <rue_bed> I have a serial transmitt library I wrote for the tiny26
[21:44:17] <rue_bed> I wonder how I can get that to recieve
[21:45:20] <rue_bed> I suppose on each bit I can reset the counter to help sync
[21:46:27] <rue_bed> but I'd need to catch an edge
[21:50:25] <rue_bed> the only dual edge capable... no tiny13 has pin change interrupts
[21:50:49] <rue_bed> wait, I forgot why I want to recieve serial on a tiny13
[21:51:22] <rue_bed> right now I just want to know the codes for the remote, and I can do that with the transmitt library
[21:51:54] <rue_bed> ooh, I wanted to poke at the idea of a tiny13 as a 4 servo serial controller
[22:48:39] <anonnumberanon> And I have to dive more into timers now.
[22:49:56] <anonnumberanon> I was not able to make a variable amount of calls to asm nop for a delay that would be less than 1.5 us.
[22:50:17] <anonnumberanon> Calling a function itself takes minimum 1.4 us.
[22:51:01] <anonnumberanon> Not doing a function but putting nops in a while loop also takes that amount of time.
[22:51:09] <anonnumberanon> Even with optimization -O2.
[22:54:16] <anonnumberanon> Which made me reallly sad. Cause that way would have been really elegant in my opinion.