#robotics Logs
Oct 21 2017
#robotics Calendar
01:43 AM anonnumberanon: z64555 what was wron with the car?
01:46 AM anonnumberanon: I'm sort of a car buff.
02:53 AM theBear: you're a giant fluffy disk that is way too dangerous when someone puts you in their angle grinder and starts-a-buffin ?
02:58 AM mrdata_: like a snowflake
02:59 AM theBear: heh, a beautiful and unique snowflake
03:04 AM * weyland|yutani gets his blowtorch out
03:10 AM mrdata_: poor little fragile snowflake
03:45 AM drekipus: it's done fellas
03:46 AM drekipus: some egomaniac control freak has come along and sabotaged the bot
03:46 AM drekipus: EKF, cool two-mice tracker, omni wheels, all for naught
03:46 AM edmoore: z64555: they are fine and all BUT
03:47 AM edmoore: note that there are two conventions as to what a quaternion is
03:47 AM edmoore: basically down to the sign of the rotation components
03:48 AM edmoore: hamilton used one originally
03:48 AM edmoore: most engineering literature uses the other
03:48 AM edmoore: i believe known as the JPL convention
03:48 AM edmoore: anyway, learn from me, know that they exist, and don't do what i did and loose like a week to tearing my hair out because i could just in now way reproduce the work in various interesting papers
03:49 AM Jak_o_Shadows: aha, edmoore
03:50 AM Jak_o_Shadows: edmoore, it's literally just the orer you putt he components in right?
03:54 AM edmoore: yes
03:54 AM edmoore: order and sign
03:54 AM edmoore: or not sign, depending on your sign convention :)
03:54 AM Jak_o_Shadows: sign is less often changed than order?
03:55 AM edmoore: well i think it's that jpl ref frames are left handed and hamiltonian frames are right handed
03:56 AM Jak_o_Shadows: ah
03:56 AM Jak_o_Shadows: yeah, i rarely consider right handed frames
03:56 AM edmoore: so one is [q x y z] and the other is [x y z q], but worth noting the handedness changes so you will or won't need to model that depending on what you're doing
04:01 AM Jak_o_Shadows: yup
05:50 AM drekipus: I've decided that I'm only going to use left handed frames so I don't have to put down my pen tofigure shit out and everyone has to conform to me
06:00 AM Jak_o_Shadows: ok. I think I have all the wires for this little board placed out
06:00 AM Jak_o_Shadows: will solder tomorrow
07:38 AM rue_shop3: one sided line
08:42 AM sploders101: does anybody here use robotc for vex robotics?
08:47 AM anonnumberanon: I used it a couple hours in college 10 years ago does that count?
08:51 AM sploders101: I found the answer, thank you. The variables for the remote's triggers were not defined, and I wasn't able to find anybody with the same problem, but my development platform got switched
09:08 AM anonnumberanon: I'm glad I helped :)
09:17 AM notaguru: So I dissassembled the webcam of my lenovo thinkpad, it is a 60Y9401 and I tried to find out which cable is which to connect it to a usb cable but I cant. Googling the serial only gives me pages selling the webcam, no information
09:17 AM notaguru: Can anyone help me?
09:36 AM anonnumberanon: what makes you think you can connect USB to it?
09:40 AM anonnumberanon: yeah apparently it is a usb interface
09:41 AM anonnumberanon: you'd have to figure out your cables then...
09:41 AM anonnumberanon: power, ground signal, i think usb is 2 signal wires iirc
09:42 AM notaguru: Exaclty, that is my question
09:42 AM notaguru: How do I find out which is which
09:42 AM notaguru: imI thought the serial would help me, but it seems the only information you find with it is where to buy it
09:44 AM anonnumberanon: notaguru, i would have the camear in the laptop, running, and probe the wires
09:45 AM anonnumberanon: power will be a constant signal (using an oscilloscope) and data + and data - will be weird signals, which actually would show data if you probed them with a logic analyzer
09:46 AM anonnumberanon: in this pic on the left you can see that 4 wires come out
09:47 AM anonnumberanon: with very zoomed in picture of the camera i could probably tell you which are power and ground
09:47 AM anonnumberanon: (picture of the camera circuit board)
09:48 AM notaguru: Is it ok if I upload a picture somewhere and send it to you?
09:52 AM anonnumberanon: yeah
09:52 AM anonnumberanon: make it very zoomed in, post it on imgur
09:53 AM anonnumberanon: if there are stickers that cover stuff, remove
09:56 AM notaguru: https://send.firefox.com/download/a1d4ad1081/#l6w_HX3sKo3nhruF7vR5kQ
09:57 AM notaguru: https://send.firefox.com/download/1e1401df29/#KRlitvbvRs6uTqIa3ZK6rg
09:57 AM notaguru: Is that ok or is imgur better?
09:57 AM notaguru: The images are high resolution you should be able to zoom in
09:58 AM notaguru: And thanks very much for offering the help
10:01 AM anonnumberanon: oh, without looking at the pcb i can tell the twisted wires are signal + and -
10:01 AM anonnumberanon: red is probably power and green is probably ground
10:04 AM notaguru: Thanks a bunch :) then I'll just try out which is + and -
10:04 AM notaguru: From 24 options down to two
10:04 AM anonnumberanon: ok this module wants 3.3 volts of power and i think what you get from a computer's usb port is 5V
10:05 AM anonnumberanon: so be careful
10:05 AM anonnumberanon: also on the picture showing the bottom of the board the wire functions are written on the board: Ground, Data +, Data -, 3V3
10:06 AM anonnumberanon: 3V3 is 3.3 V Power +
10:06 AM notaguru: Haha thanks :D
10:07 AM anonnumberanon: so you would have to supply your own power to this camera if you wanted to use it, plugging it into a computer would probably break it
10:07 AM notaguru: But that means I cannot directly connect it to usb right?
10:08 AM notaguru: So I do have an arduino and raspberry pi and could supply it with 3.3V but eithout some drivers I wont be able to read the signals probably?
10:09 AM anonnumberanon: yeah you could use the arduino's 3.3V power supply and ground and connect those 2 to GND and 3V3 of your camera
10:10 AM anonnumberanon: then you would connect the D+ and D- and GND to the computer (not the 3V3, or else camera fries)
10:11 AM anonnumberanon: for talking to the camera with arduino i don't remember how you do usb stuff
10:11 AM anonnumberanon: maybe it's possible, maybe arduino is too slow
10:13 AM notaguru: I am pretty new to this. I could also usr a raspberry if the arduino is to slow. Can you point me into the right direction what I have to research for to understand how to connect the 2 signal cables to anything and read the signal?
10:14 AM notaguru: Or is there some standard usb protocol that knows how to read the image from the camera and I need to understand how to read usb from a controller?
10:14 AM anonnumberanon: http://pinouts.ru/Slots/USB_pinout.shtml
10:15 AM anonnumberanon: well you want to use the camera with your computer, right?
10:16 AM notaguru: No actually for a robot with either the pi or arduino
10:16 AM notaguru: But in the greater scheme I am mainly doing this for educational purposes
10:17 AM anonnumberanon: the camera on arduino is not a good idea because arduino does not have the processing power to read that camera, Pi will do it though, it's very beefy
10:17 AM anonnumberanon: but as far as driver for the Pi to be able to use the Camera, I don't know how
10:18 AM anonnumberanon: don't know which driver you'd need
10:18 AM anonnumberanon: but Pi uses linux so maybe some linux driver for the Thinkpad camera
10:18 AM anonnumberanon: that would get you closer to what you need
10:19 AM anonnumberanon: the Pi being a computer, you can connect usb stuff to it, so yeah
10:20 AM anonnumberanon: and by computer i dont mean that lol
10:20 AM anonnumberanon: but ehh, whatever, I'm tired
10:21 AM anonnumberanon: when i did this i bought a "raspberry Pi compatible camera"
10:22 AM anonnumberanon: we didn't want to spend any time on trying to figure it out
10:22 AM anonnumberanon: so it just worked as a plugin into the Pi
10:22 AM notaguru: Yeah this is what I'll probably also do at some point but I wanted to try
10:22 AM notaguru: Thank you very much for your help :)
10:25 AM anonnumberanon: yeah you have to make a time/cost analysis, the pi camera is like $25, do you have that money? because considering the fact that making the robot is the main objective you may want to just buy the camera so that you can start your computer vision stuff with it instead of trying to write your own driver or whatever it would take to make camera work with the Pi
10:29 AM notaguru: Yes that is probably the sane way, I just wanted to try it out I guess :D
10:51 AM anonnumberanon: https://www.raspberrypi.org/forums/viewtopic.php?f=45&t=140849
10:51 AM anonnumberanon: these guys do it for a "surveillance system" with the Pi but i can't find any mention of any drivers
10:54 AM z64555: remind me to stay away from dual quaternions
10:54 AM z64555: at least for now
10:54 AM anonnumberanon: lol
10:55 AM anonnumberanon: are they supra complicated?
10:57 AM z64555: not very complicated, just very un intuitive
10:58 AM z64555: dual quats are a pair of quaternions, with one being the mathematical dual
10:58 AM z64555: The dual, if multiplied by itself, is nullified
10:58 AM anonnumberanon: okay stop now
10:58 AM anonnumberanon: ;)
10:58 AM z64555: oh. ok. thanks
10:59 AM z64555: I got the gist of bezier (btw it's pronouced "biz-eh") curves and they can be used in trajectory planning
11:00 AM z64555: (i've been calling them "biz-eh-er" since forever)
11:01 AM anonnumberanon: busy - yeah
11:01 AM z64555: so quadratic bezier curves are const. acceleration, while cubic are const. jerk
11:02 AM anonnumberanon: so if you were video taping a drone you would be able to tell where it will be at time t+1 ?
11:03 AM z64555: if it was following that curve, yes
11:03 AM anonnumberanon: would it?
11:04 AM anonnumberanon: is this for free body things or things that have propulsion
11:04 AM anonnumberanon: or, initial velocity, at least
11:04 AM z64555: Both
11:05 AM z64555: uh, it does need some initial velocity and acceleration
11:05 AM z64555: acceleration isn't that big of a deal, and initial velocity can be gotten from a short straight path
11:06 AM z64555: Ok, so, for a quadrotor. Lets say you're moving forward and it suddenly changes to a new orientation
11:06 AM z64555: pitch+roll angle
11:06 AM z64555: it'll have a quadratic curve, since the acceleration is constant
11:07 AM z64555: because it gets its acceleration from its orient
11:08 AM z64555: Now, if the orient was smoothly changing during the curve, it'll have a cubic path
11:12 AM z64555: thats, uh, about as far as I got
11:22 AM anonnumberanon: https://www.livescience.com/60733-moon-lava-tube-could-shelter-astronauts.html?utm_content=bufferfc6f1&utm_medium=social&utm_source=facebook
11:26 AM z64555: as long as it doesn't decide to get hot again
11:30 AM anonnumberanon: i believe the moon is fullly cold
11:30 AM anonnumberanon: don't quote me on that
11:46 AM weyland|yutani: z64555, well or moonspiders
11:57 AM * anonnumberanon shivers
12:11 PM rue_shop3: printing keyboard for new cnc pendant
12:11 PM rue_shop3: using up 3mm filament
12:11 PM rue_shop3: need to finish it off so I can convert the machine to 1.75
12:12 PM rue_shop3: got hte lcd library rewritten
12:12 PM veverak: same problem here
12:12 PM veverak: 3mm sucks
12:13 PM rue_shop3: the right way tot do a hd44780 library is with toggle_e, write_nibble, write_databyte, write_controlbyte, then whatever
12:13 PM * veverak should revisit his pca9685 library
12:14 PM veverak: last time I had to start up Adafruit python library
12:14 PM veverak: print i2c messages sent (register, value)
12:14 PM veverak: and compare it to output from my library and figure out what is wrong
12:14 PM rue_shop3: I'v just noticed the 1.75 prints seem to come out better, I think its to do with thermal soaking
12:14 PM rue_shop3: what was the diff?
12:15 PM veverak: som commands sent in different order
12:15 PM veverak: *some
12:15 PM rue_shop3: hmm
12:15 PM veverak: it was like "send start of pulse to 0", "reboot"...
12:15 PM veverak: correct oder is "reboot", "send start of pulse to 0"
12:15 PM rue_shop3: red buttons, yellow buttons, black buttons... that should do
12:15 PM veverak: or? not sure
12:16 PM veverak: that 's why I should revisit it, to make some sense out of it
12:16 PM rue_shop3: tis i2c isn't it?
12:16 PM veverak: yup
12:16 PM rue_shop3: or thats the pwm one?
12:16 PM rue_shop3: both rue
12:16 PM veverak: i2c PWM driver
12:16 PM rue_shop3: hu?
12:16 PM veverak: :)
12:16 PM rue_shop3: oh
12:16 PM veverak: 16 channels, 12 bits
12:16 PM rue_shop3: "12"
12:16 PM rue_shop3: }:|
12:18 PM rue_shop3: oh poo, I didn't splice the 1.75 in the right place, my yellow buttons are going to be 2/3 black
12:18 PM veverak: 14/16 would be better
12:18 PM rue_shop3: PCA5934
12:18 PM rue_shop3: ...no, I dont remmeber how many bits
12:18 PM rue_shop3: chip runs hot tho
12:19 PM rue_shop3: something like 20Mhz in
12:19 PM veverak: can't find PCA5943
12:19 PM rue_shop3: thats cause he's wrong, its TLC5934
12:20 PM rue_shop3: oh, sorry
12:20 PM veverak: 12-bit
12:20 PM veverak: thing is
12:20 PM veverak: rue_shop3: PCA9685 biggest advantage is that it's chainable
12:20 PM rue_shop3: horrid timeing requirements
12:20 PM veverak: and you can order it for 3$ from aliexpress
12:21 PM rue_shop3: the TLC will chain
12:21 PM veverak: with board and everything
12:21 PM veverak: so setup is like "solder pins and connect"
12:22 PM rue_shop3: the TLC5940 is $1.30ea
12:22 PM rue_shop3: yea, you have to make your own board for it
12:22 PM veverak: yup
12:22 PM rue_shop3: its not arduino compatible :)
12:23 PM veverak: in what way?
12:23 PM veverak: arduino can control it
12:23 PM veverak: :)
12:23 PM rue_shop3: there is no turnkey baord
12:23 PM veverak: turnkey?
12:23 PM rue_shop3: yea, plug it in and and go, you know all done for you
12:23 PM veverak: this is for me
12:24 PM rue_shop3: turnkey
12:24 PM veverak: assert(you_have_library_for_i2c_msater)
12:24 PM rue_shop3: wind storm, at some point, my power is going to go out
12:24 PM rue_shop3: 2 3d printers running and the 3rd is parts in a box
12:25 PM veverak: :)
12:25 PM * veverak tried to print yestrday
12:25 PM veverak: not exactly success
12:25 PM rue_shop3: 1.75mm is good, but I dont like the bowden thing
12:25 PM veverak: need to print out ninja flex and find mine for new hotend
12:25 PM rue_shop3: sounds like your in with Jak_o_Shadows, printer never works right
12:26 PM veverak: it was idle for a long time
12:26 PM veverak: I suspect it needs general cleaning of bearings etc
12:27 PM veverak: reminds me I could figure that out just with disconnecting belts
12:27 PM veverak: hmm
12:27 PM rue_shop3: have have been impressed how few breakdowns all my machines have had for the number of hours on them
12:27 PM rue_shop3: drat, if I want yellow keys, I'll have to swap colours again
12:29 PM veverak: well
12:29 PM veverak: it was first experience with some machine for me
12:30 PM veverak: I should not expect briliant effeciency and bulletproofness
12:30 PM rue_shop3: ah, I'v made prolly hundreds of different machines
12:30 PM veverak: I learned fucking lot
12:30 PM veverak: so it payed itself
12:30 PM veverak: :)
12:35 PM rue_shop3: spelling nazi says paid
12:41 PM veverak: ah
12:41 PM veverak: yeah
04:36 PM Tom_itx is now known as Tom_L
05:45 PM Jak_o_Shadows: z64555, yeah, I like bezier curves for trajectory. Continous and smooth (C3)
05:46 PM Jak_o_Shadows: Only, if you're looping it, you need to complicate it a teensy bit
07:46 PM z64555: hm, a cubic bezier should be able to do loops, not too great if you're doing a loops that are not full circle (such as 540 degree loop)
07:48 PM mrdata: yes it can do loops
07:49 PM mrdata: and you can string together multiple anchors, so that will get you arbitrary degrees
07:57 PM Jak_o_Shadows: yeah. But you have to more manually deal with the conditions to get it to be smooth at the join point
07:57 PM Jak_o_Shadows: Also, I dont' so much mean loops in space, I mean loops in time
07:57 PM Jak_o_Shadows: also, I only blew up 2 dc boost converter thingies
08:00 PM mrdata: the conditions are that the first and second derivatives of the two curves at the join point match
08:00 PM mrdata: which doesnt have to be manual
08:07 PM Jak_o_Shadows: didnt' say manual, said more complkcatd
08:12 PM * z64555 looks at backscroll
08:12 PM z64555: ok
08:12 PM evilroot: Bah
08:13 PM evilroot: Looks like its finally time to tear down the CMM for parts
08:23 PM Tom_L: evilroot what's wrong with it?
08:24 PM evilroot: Nobody wants to buy it, heh
08:25 PM Tom_L: what kind is it?
08:25 PM evilroot: Starrett Rapid Check II
08:25 PM Tom_L: the first one we had was a B&S
08:25 PM Tom_L: air bearings?
08:25 PM evilroot: Well it has been sitting a bit, prob needs cleaning
08:26 PM evilroot: But I jogged it all around, seems to sork fine
08:26 PM evilroot: *work
08:26 PM evilroot: I think they're pillow block bearings
08:27 PM evilroot: Actually yes, I know they are
08:28 PM evilroot: Model MGDS2424-18
08:29 PM evilroot: Its a damned cool machine, and several people have said they wanted it only to back out
08:30 PM Tom_L: selling it?
08:31 PM evilroot: I'd like to, yeah
08:31 PM evilroot: Asking $2k, which is about what I could get for the probe and parts
08:32 PM evilroot: Heck just the probe is around $1k
09:04 PM evilroot: Why, know someone that might need one?
09:05 PM Tom_L: not off hand
09:06 PM anonnumberanon: why are Bezier curves the new cool thing and how can I use them in my life?
09:06 PM anonnumberanon: although yeah the animations for them in the wikipedia article do look too cool
09:10 PM z64555: they're, uh, not new
09:11 PM evilroot: Tom_L: yeah, that seems to be the trend
09:11 PM evilroot: I know someone would love it, but spent too long trying
09:11 PM z64555: Anyway, I was interested in them for trajectory planning of bots, so that it can check to see if it needs to adjust its trajectory to miss an object
09:12 PM Tom_L: my bud had 2
09:12 PM evilroot: Think I'll use the linear motion system to make a 3d printer
09:12 PM Tom_L: one ended up sitting out in the rain when he sold his business
09:12 PM evilroot: Ouch
09:12 PM Tom_L: they didn't take very good care of things needless to say
09:12 PM Tom_L: he ended up taking the granite base to his home shop as a bench
09:13 PM evilroot: https://drive.google.com/file/d/0B5fQTi1W868OdFlhbFBBSnQ1U3M/view?usp=sharing
09:13 PM evilroot: https://drive.google.com/file/d/0B5fQTi1W868OUnVpVExtSm9rd3c/view?usp=sharing
09:13 PM evilroot: Even has the manuals and software :-(
09:13 PM z64555: anonnumberanon: cubic beziers offer a way to reach a waypoint from a specified direction
09:22 PM z64555: they're also faily common in 3D modeling editors, so you can plot paths in them
09:28 PM anonnumberanon: any advantage being able to write programs with them?
09:37 PM z64555: simple, easy to understand vs. a kinematics matrix
09:37 PM z64555: or... worse
10:56 PM ace4016: they are indeed simple. made a neat little system with them for pre-defined paths for a game i wrote
10:59 PM Jak_o_Shadows: my other issue I had with beziers was that they didn't deal with phase
10:59 PM Jak_o_Shadows: like, -90 is the same as 270
11:16 PM z64555: you might have to use screw representation for that
11:16 PM Jak_o_Shadows: ?
11:17 PM z64555: which is angle rotation + pitch
11:17 PM z64555: wait, no
11:17 PM z64555: argh, thinking about dual quaternions again. they're like poison
11:18 PM anonnumberanon: lol