#robotics Logs
Dec 27 2017
#robotics Calendar
12:00 AM LuminaxWk: mmmmm I'd beg to differ on that particular subject
12:03 AM LuminaxWk: but my brain's a bit too addled to go hunting for facts :3
12:03 AM anonnumberanon: I'm thinking on cheapening out on the rails and ball screws of my cnc
12:03 AM anonnumberanon: leadscrews are SO cheap, springs can be added to minimize backlash
12:05 AM anonnumberanon: 15 micron is achieved on the 3020 which has rods for rails and i dont know what screws it uses
12:14 AM anonnumberanon: yeah, leadscrews
12:16 AM anonnumberanon: maybe could use a ball screw for z and lead screws for xy
12:17 AM anonnumberanon: see what precision that takes us to
12:22 AM LuminaxWk: linear rail + servo motor? :3
12:57 AM rue_shop3: anonnumberanon, standard threaded rod
12:57 AM rue_shop3: has a few problems
12:57 AM rue_shop3: variance in the pitch means that antilash nuts will tend to jam
12:57 AM rue_shop3: 2nd, no piece of theaded rod is straight
12:58 AM rue_shop3: 3rd, the V thread is not tight to the nut, the rod can change position in the nut
12:58 AM rue_shop3: instead of following the screw
12:59 AM rue_shop3: but for the most part, leaving one end of the drive floating and running in a backlash screw while slowly tightening it up, works ok
01:00 AM rue_shop3: anonnumberanon, how about belt drive and a worm drive?
01:06 AM anonnumberanon: rue_shop3, that's what you're running?
01:06 AM anonnumberanon: the leadscrews work very well on 3020, 3040, 3060
01:17 AM rue_shop3: printer estimates another hour
01:17 AM rue_shop3: dunno if I can run that long
01:57 AM rue_shop3: yep, this solder dispencer is gonna work great
01:57 AM rue_shop3: just a button is fine
01:58 AM rue_shop3: a) it holds the solder up for ya
01:58 AM rue_shop3: b) it gives ya more when you ask for it
01:58 AM rue_shop3: yea
01:58 AM rue_shop3: thats doin good
02:39 AM rue_shop3: there is no thingiverse item 1
02:39 AM rue_shop3: there is thing 2
02:39 AM rue_shop3: its called a screwdriver, but...
03:49 AM Kristjan: My name is Kristjan. I am in urgent need for money. Please send me bitcoins. My bitcoin address: 167D9oFBSnyNSRoBNcscNDQb7KdK2BhfKg. You can also send to my paypal account(My e-mail: kristjanrobam@hotmail.com). or bank account: EE671010010225901016. Name: Kristjan Robam
06:33 AM rue_bed: uhu
06:33 AM rue_bed: atleast its not a flood
08:01 AM Tom_L: rue_bed, time to get up
11:26 AM rue_bed: couldn't get to sleep last night
11:26 AM rue_bed: even tho I was tired at 9
11:26 AM rue_bed: just tossed all night
11:40 AM veverak: ok
11:40 AM veverak: octree is not really hard to code
11:40 AM veverak: and I did made the sweet combination of performance + nice api
11:42 AM veverak: the code provides two APIs
11:42 AM veverak: one to iteratre over the NodeStorage, which is what stores the data in memory
11:42 AM veverak: NodeStorage contains only % of occupancy in that coxel and pointer to other children
11:42 AM veverak: "the efficient API"
11:43 AM veverak: second to iteratore over the Node class, which is create dynamically, got a reference to the NodeStorage and automatically calculates actual nodes depth, cube edge length and position relative to root
11:43 AM veverak: *created
12:36 PM veverak: ok, now I have collission detection of octree with boundary box sphere tree
12:37 PM veverak: well, kind of nice
12:48 PM sameh4: Hey guys! I wouldn't call myself a newbie, but I am not professional either. But I have almost zero experience with simulators. Does anyone here have good experience with simulators? not any one in partiuclar
12:51 PM SpeedEvil: Simulators of what
12:59 PM sameh4: differential drive robot
12:59 PM sameh4: @SpeedEvit
12:59 PM sameh4: l*
01:09 PM edmoore: like something you sit in with hydraulics that makes you think you're driving a tank?
01:09 PM edmoore: or just a c++ api that you pass a vector of derivatives to
01:28 PM rue_mohr: left and right joystick?
01:30 PM rue_mohr: aaawe damnit, nobodys designed a 3d printable typewriter
02:17 PM rue_shop3: I need a keybaord thats not based on keys that use a linear slider
02:18 PM veverak: why?
02:18 PM rue_shop3: they ALWAYS start to jam up
02:20 PM rue_shop3: I'm tired of having to take keybaords apart every 5 years and service them
02:21 PM veverak: it is propably easier to find a good source of new keyboards and throw them into a bin
02:23 PM LoRez: buy cherry based keyboards?
02:24 PM rue_mohr: heh, I cant afford them
02:24 PM rue_mohr: and, in the long run they aren't made that much different
02:24 PM rue_mohr: still plastic-on-plastic linear sliders
02:25 PM rue_mohr: veverak, good keybaords are really hard to find
02:25 PM veverak: I do not think that is a problem
02:25 PM veverak: or that is not for me
02:25 PM veverak: I trained myself to not to be pointlessly sensitive for keyboards
02:25 PM rue_mohr: most keybaords are designed to have a button for everything, take up your whole desk, and look like christmas tree year round
02:26 PM veverak: I regularly use one
02:26 PM veverak: rest can be whatever it wants to be
02:26 PM rue_mohr: 3ish for me
02:26 PM rue_mohr: I think Ic an build keybaord that will run 15 years tho
02:27 PM rue_mohr: dont expect to stop needing one
02:27 PM veverak: do it :)
02:28 PM rue_mohr: I ordered microswitches
02:28 PM rue_mohr: but have to design lever based key mechanics
02:28 PM Tom_L: mine has lasted at least 15 and probably more like 25
02:28 PM rue_mohr: I have a model M in the shop
02:28 PM Tom_L: probably cherry switch
02:28 PM rue_mohr: even its starting to get stiff
02:28 PM rue_mohr: its snowing
02:28 PM Tom_L: northgate
02:29 PM Tom_L: it is not
02:29 PM Tom_L: i just looked outside
02:29 PM rue_mohr: cherry keyboards are about $800, and I'm not really convinced its for more than the name
02:29 PM rue_mohr: take down the cardboard, its snowing hard
02:30 PM rue_mohr: oh wait, I'm in the area that gets the show first
02:30 PM rue_mohr: it might not be snowing anywhere else
02:30 PM rue_mohr: guess I should go buy milk
02:30 PM Tom_L: get some chocolate to go in it and heat it up
02:31 PM Tom_L: don't forget the marshmellows
02:31 PM rue_mohr: I have a helping hands to build
02:31 PM rue_mohr: I worked out the arm segments, I have to work out a shoulder
02:33 PM rue_mohr: I figure that the layout is still the same as typewriters, so, I can take the layout back to leverarms and not have problems
02:39 PM rue_mohr: huh, imagine an age where there were so many people able to build things that someone would need to file a pattent on a deisgn to make sure nobody else took over making it
02:44 PM sameh4: I am using a raspberry pi to practice low level development with a differential drive robot; bare metal without an OS underneath. I use a bootloader over USB to UART to update the Pi with new versions of the kernel.
02:45 PM sameh4: It's going good so far. I have PWM and I2c woking for DC motor and sensors. I want to start testing PID on a simulator
02:45 PM sameh4: However I am having trouble understanding how I can use my C code for bare metal on one of these simulators?
02:45 PM sameh4: Gazeebo, etc, etc...
02:47 PM rue_mohr: easy dont simulate
02:47 PM rue_mohr: when you build something in a simulator, thats all it will work in
02:47 PM rue_mohr: its dependent on attributes of the simulator you didn't forsee or know about
03:08 PM sameh4: but how can I avoid trial and error?
03:08 PM sameh4: it's not easy to upload the kernel, connect the battery, test, repeat!
03:10 PM rue_shop3: you build tings in small components that only have 1 or 2 minor aspects of failure, and you test them so you know each works properly, you build the whole project out of those tested modules and it works
03:11 PM robotustra: rue_shop3, not always, because you have to make an integration test and debug
03:11 PM rue_shop3: the method your trying is to pile a bunch of untested stuff togethor pull the pin and hope it works, then beat it randomly into submission till you think it does
03:11 PM rue_shop3: most people use that method
03:11 PM rue_shop3: putting two tested modules togethor is a module that needs testing
03:12 PM robotustra: it's called integration test
03:15 PM robotustra: sameh4, why don't you use OS?
03:16 PM sameh4: robotustra, I wanted to practice low level programming, including OS specific thinks, like interrupts, scheduling, etc
03:16 PM veverak: robotustra: rue_shop3 is right
03:16 PM sameh4: things*
03:17 PM veverak: properly tested "small pieces of code"
03:17 PM veverak: are easy to put together
03:17 PM veverak: :)
03:17 PM veverak: and they are usually testable without the entire thing
03:17 PM sameh4: explain "small pieces of tested code"?
03:17 PM sameh4: I get unit testing of course, but what about hardware related things
03:17 PM sameh4: you can't know they work with the other modules with just unit tests
03:18 PM sameh4: plus tuning PID params is not just an easy thing
03:18 PM sameh4: it needs a few rounds of trial/error, which is fine in a terminal, but with bare metal, there isn't even a screen
03:18 PM veverak: unit test is bullshit
03:18 PM veverak: :)
03:19 PM sameh4: tell that to Uber's self driving car team?
03:20 PM robotustra: as soon as you have a piece of code which is modifing the state of hardware - any modification of code should be retested as a whole piece
03:20 PM manuel_1: heya! i have the following problem. This is the best channel I could think of to ask it. I have a heater control loop, and I want to avoid having the machine catch fire. More precisely, I want to handle things like a temperature sensor falling off or a fan conducting air flow to the temperature sensor getting cut off, which would cause the temperature sensor to read say 20 C while the real temperature is 200 C, yet it happily blasting the heaters because
03:21 PM manuel_1: while I could start hacking stuff like "if it doesn't move in this period of time when heating up then lalala", I thought this was actually quite close to a kalman filter of sorts
03:21 PM veverak: sameh4: that is different environment
03:21 PM veverak: unit testing in this case? seems like waste of time
03:21 PM sameh4: OK!
03:21 PM manuel_1: I want to run a model of my heater system, and stop when it starts diverging from the actual readings. Yet, I want to incorporate real world readings in some way to avoid having my model drift off too much. The rationale is that once I have such a system, the maths is actually easier to understand, model and verify than if I do some ad-hoc code magic.
03:22 PM manuel_1: does my thinking make sense at all? does anyone have experience with recognizing faulty sensors that appear to work "normally"
03:22 PM robotustra: manuel_1, formulate your question in 1 line
03:23 PM manuel_1: what ways are there to recognize faulty sensors that report valid values, especially in the context of a heater system?
03:23 PM robotustra: 1-2 more tand alone temp sensors?
03:23 PM robotustra: stand*
03:23 PM Snert_: faulty in terms of linearity ... perhaps that makes sense.
03:24 PM Snert_: but myself....I'd just use the spare sensor I have.
03:24 PM veverak: sameh4: unit testing makes sense when you have programming hands to spare as paranoia level of protection
03:24 PM veverak: for small projects, it is bullshit
03:24 PM veverak: but hey
03:24 PM manuel_1: concrete world example: the fan controlling the airflow for chamber temperature uniformity failed, which caused no "heated" air to reach the temperature sensor, which made it happily report 30 C while the actual temperature was 200
03:24 PM veverak: EVERYBODY IS SHOUTING THAT YOU SHOULD UNIT TEST EVERYTHING
03:25 PM veverak: SO EVERYBODY DOES THAT, EVEN THOUGH THEY HAVE NO IDEA WHAT THEY ARE DOING
03:25 PM veverak: !!!
03:25 PM robotustra: manuel_1, do you know what is redundancy?
03:25 PM veverak: :0
03:25 PM sameh4: OK
03:25 PM robotustra: veverak, I didn't use unit test in my programming life yet
03:25 PM manuel_1: robotustra: that wouldn't handle the fan failure for example. also there are costs involved. we use some fairly expensive IR heaters for some systems
03:26 PM robotustra: and my code works without any issues
03:26 PM veverak: robotustra: I did for src/util/*.h
03:26 PM veverak: not full testing
03:26 PM veverak: but behavior tests
03:26 PM robotustra: manuel_1, so, you are telling me that your equipment is too expensive to be redundant?
03:27 PM manuel_1: yes
03:27 PM manuel_1: and in the example i mentioned above, you can't install a redundant airflow system, it doesn't work that way
03:27 PM robotustra: can you make a sensor self testing?
03:28 PM robotustra: because there are couple of failure points in here
03:28 PM veverak: robotustra: but everytime somebody tries to force the "Test Drive Development"
03:28 PM veverak: I want to kick him in the ass
03:28 PM manuel_1: yeah we have temperature sensor failure handling for when we can recognize it (too much noise, invalid readings, or in the case of the ir sensors when they report a failure)
03:28 PM robotustra: like communication bus and 2) is the sensor itself
03:28 PM manuel_1: but this doesn't catch a lot of possible error behaviours leading to catastrophic results
03:29 PM robotustra: manuel_1, what kind of sensor do you use?
03:29 PM robotustra: how do you read them?
03:29 PM robotustra: what bus?
03:29 PM manuel_1: i want to have a check that would go like this: "according to my understanding of the system, this is an erroneous behaviour". for example, if i turn on my heaters full blast, outputting 5 kW of energy, I should expect temperature to rise
03:30 PM robotustra: manuel_1, I got what you are saying. let's do it step by step
03:30 PM manuel_1: some are plain ADC readings, some are i2c. but the issue is not with the sensors themselves. it's the sensors measuring the wrong thing, for various reasons. for example a sensor fell off its mount. or the conductivity of the material it is attached too changed, etc...
03:31 PM robotustra: so, you want to make an intellectil agent which will tell you on the base of input data that the sensor is failed?
03:31 PM manuel_1: yes
03:32 PM robotustra: there are couble approaches for that
03:32 PM manuel_1: i have something on the basis of a kalman filter that seems very promising, but i wanted to know if there were maybe existing approaches
03:32 PM robotustra: forget about kalman
03:32 PM robotustra: it's not the case
03:33 PM robotustra: kalman have nothing to do with failures
03:33 PM robotustra: what you need to do is to take a decision - whether to stop your process or not
03:34 PM robotustra: kalman is just a filter, after that you have to take a decision
03:34 PM robotustra: anyway
03:34 PM manuel_1: my thinking was, i have a way to predict the behaviour of the system. i need to update this model with information from the real world. however, if the model diverges too much from the real data, then i want to signal a failure
03:34 PM robotustra: so, you have to find GOOD model of your process first
03:34 PM robotustra: it's for sure
03:35 PM robotustra: and model should include all factors you want to track
03:35 PM robotustra: it's a must
03:35 PM manuel_1: a very naive model seems to work quite well. basically the output of energy heats up by a linear factor
03:35 PM robotustra: model could be described in any terms, even just if..else..
03:36 PM manuel_1: at the moment it's model_temperature_C += dt * scale_factor * dutycycle * heater_wattage
03:36 PM manuel_1: with a low pass filter for slow heaters, but we have some very fast ones
03:37 PM robotustra: you are considering 1 input parameter or more?
03:37 PM manuel_1: the only control parameter is dutycycle
03:37 PM robotustra: no,
03:37 PM manuel_1: + model parameters per heater (constant)
03:37 PM robotustra: I'm talking about data input
03:37 PM robotustra: how many inputs do you have?
03:37 PM manuel_1: one temperature sensor per control loop, for simplicity's sake
03:38 PM robotustra: do you know how temperature is controlled in 3d printers?
03:38 PM manuel_1: depends on what you mean by 3d printers
03:38 PM manuel_1: fdm?
03:38 PM robotustra: "average"
03:38 PM robotustra: yes
03:38 PM manuel_1: we use a PI controller
03:38 PM robotustra: they use PID controller
03:38 PM robotustra: yes
03:38 PM manuel_1: the D term is just a nuisance
03:39 PM robotustra: true
03:39 PM robotustra: so why don't you use PID for your model?
03:39 PM manuel_1: we use PI for control
03:39 PM robotustra: and what is the problem with this?
03:40 PM manuel_1: but to go back to the example before. the fan conducting the heated air to the sensor failed. the sensor read 30 C, trying to reach the setpoint of 75C, so it was running the heaters full blast, until... fire
03:40 PM robotustra: you can't solve hardware issue with your software!
03:40 PM manuel_1: yet, all the systems worked "correctly" as far as we were concerned. we could of course measure the fan speed with a tachometer, and add that in, but i would like to have this more general safety measure of "something is not right with the heater, cut it off"
03:40 PM robotustra: read it carefully
03:41 PM manuel_1: well i hope i can, if i put the heaters full on for 5 minutes, and my temperature doesn't rise, something is wrong, even if i can't measure it
03:41 PM robotustra: unless you did a long term observation of your system
03:42 PM robotustra: it means, that you have more than 1 input: 1) temperature 2) start heating time 3) power of heating
03:42 PM manuel_1: in fact, I should read an increase of .2 C after 10 seconds, which is outside of sensor noise. if i don't, either the air conduction is broken, or the heaters don't work
03:42 PM robotustra: that's what I asked you about
03:42 PM manuel_1: i see, to go back to kalman filter, i have one control output (dutycycle), and i have one measurement input (temperature sensor)
03:43 PM robotustra: if you have 3 input parameters - it means you can create more sophisticated model of your process
03:43 PM manuel_1: i feel we're going in a loop where we agree but we are not discussing the same thing
03:43 PM robotustra: do you have a signal "heating started"?
03:43 PM manuel_1: yes, that's the dutycycle
03:43 PM manuel_1: so hold on, let me try to join you in your thoughts
03:44 PM manuel_1: assume i have a very good model of heater behaviour. if the temperature output by my model doesn't match the real world temperature, i throw a failure
03:44 PM robotustra: yes
03:44 PM manuel_1: i use all the inputs and state information and what not i have at my disposal, and my model is very accurate
03:44 PM robotustra: exactly
03:44 PM manuel_1: but... it's a model, so it will not be perfect forever and ever. in fact, it will most probably diverge after not even a minute
03:45 PM robotustra: if the divirgence is too big - you report a failure
03:45 PM manuel_1: so, i need to update it with some of the real world measurements
03:45 PM robotustra: I'm pretty sure you can do quite good model
03:45 PM manuel_1: but, what happens if me updating the model with real world measurements hides the fact that the system is actually broken
03:45 PM manuel_1: ^-- that's the tricky part
03:46 PM manuel_1: hold on i think i have a diagram somewhere
03:46 PM robotustra: as I told - there is a redundancy for that
03:46 PM manuel_1: assume all your redundant sensors report the wrong temperature
03:46 PM robotustra: if you want a critical mission application syste - use redundancy, put 2 temp sensor or more
03:47 PM robotustra: do you know how computers on a space station works?
03:47 PM robotustra: they vote
03:47 PM manuel_1: yes but that's not the issue. i can put 8 sensors in my air flow funnel, if the air flow is broken, they will all read something wrong
03:47 PM robotustra: if 2 of 3 givese the same result - it's a right value
03:48 PM robotustra: do you have a air flow sensor?
03:48 PM manuel_1: or i can put 5 sensors on my internal container, but if the side of that container detaches, they will all read the wrong value too
03:48 PM robotustra: no container - no problem
03:48 PM manuel_1: i feel we're in a loop. i don't want to fix the air flow failure, i feel that i should be able to write a program that tells me "reality doesn't match your model, abort"
03:48 PM robotustra: btw, there is a connection signal is usually for this case
03:49 PM robotustra: no we are not
03:49 PM robotustra: 1) formulate clearly what you want
03:49 PM robotustra: 1) formulate clearly what you want
03:49 PM robotustra: 1) formulate clearly what you want
03:49 PM manuel_1: i want to recognize divergence between my heater model and real world measurements.
03:49 PM robotustra: 2) write a technical task
03:50 PM robotustra: manuel_1, why are you talking then about containers and air flow?
03:51 PM robotustra: read all what I write before and think 10 min
03:51 PM robotustra: and formulate the technical task to solve for your SYSTEM
03:52 PM robotustra: describe your system, describe the list of params, input params, output params
03:52 PM robotustra: draw a control loop
03:52 PM manuel_1: i have a model of how my system should behave. this model, because it is not perfect, needs to be updated with real world values. however, i want to recognize large discrepancies between my model and real world data. how?
03:52 PM robotustra: draw a model
03:53 PM robotustra: put more real world sensors.
03:53 PM robotustra: you don't have any other option
03:53 PM robotustra: do you know how many sensors have your body?
03:53 PM manuel_1: i think i have
03:53 PM robotustra: as you wish
03:54 PM robotustra: of cause it's my humble opinion
03:54 PM robotustra: you can do whatever you want
03:54 PM robotustra: ok, I go home
03:54 PM manuel_1: so you think it's not possible to recognize a discrepancy between a model and real world data?
03:54 PM manuel_1: the thing that i am stuck on is this: https://www.evernote.com/shard/s6/sh/10f3fa6c-7e92-420e-bac9-997616c31f18/a39df12ffde1d1711df209c679c75dfc
03:54 PM manuel_1: if i update my simulated temperature with real world data too often, i run the risk of missing a real temperature runaway
03:56 PM robotustra: later
03:56 PM robotustra: bb in 1-2 h
04:09 PM manuel_1: ok i should have googled "kalman filter sensor failure"
04:21 PM manuel_1: robotustra: I found a paper that answers all myq uestions: https://www.sciencedirect.com/science/article/pii/0005109884900980
04:22 PM veverak: nice
04:22 PM veverak: :)
04:53 PM manuel_1: alright, that is indeed the answer. use a kalman filter to estimate your state, use a CUSUM filter to detect long running statistically relevant drifts (or a threshold for faster acting but more false positives), and it's a technique that's been around since the 70ies for fault detection in heat control in power plants for example, and lately for UAV control and self-driving vehicle sensor fault detection
05:02 PM robotustra: hipsters like manuel_1 will program planes and heaters without even understanding what's going on in the REAL world and other people will eat their shit after
05:03 PM robotustra: in abstract it's written exactly what I told
05:03 PM robotustra: With the aid of process models, estimation and decision methods it is possible to also monitor nonmeasurable variables like process states, process parameters and characteristic quantities. This contribution presents a brief summary of some basic fault detection methods. This is followed by a description of suitable parameter estimation methods for continuous-time models.
05:06 PM robotustra: did some belt drawings https://imgur.com/73STFfW
05:42 PM rue_shop3: k
05:52 PM robotustra: thinking if I can use this lathe in this position: https://imgur.com/MHnriJF
05:52 PM robotustra: or tilted 45 degree
05:59 PM veverak: dman it
05:59 PM veverak: reminds me of the academic code I've seen
05:59 PM veverak: in article: "we wanted to create a solution usable by others and ready for practice!"
06:00 PM veverak: the code: < not even close >
06:00 PM veverak: :)
06:03 PM robotustra: and full of unit tests
06:07 PM robotustra: veverak, I wrote scientific code for more than 10 years and it was usable by me only
06:07 PM robotustra: and my supervisor
06:07 PM veverak: that is not bad
06:07 PM veverak: because you claim what is reality
06:08 PM robotustra: actually thare are 2 or 3 other guys who also use this code after
06:09 PM robotustra: because nobody need to use quantum mechanics code :)
06:10 PM robotustra: ok, go back to ball screw drawing :)
06:33 PM Tom_L: robotustra, there's a file for it that generates a ballscrew to your specified length
06:33 PM Tom_L: i pulled alot of my parts from grabcad
06:53 PM manuel_: well that paper was a bit of a dud, but there's more
06:59 PM Tom_L: robotustra why do you want to turn it sideways?
07:56 PM robotustra: Tom_L, 1) easy access to cutters 2) unload carriage motors
07:57 PM robotustra: 3) weight will help to start cutting, no backlash
07:58 PM robotustra: but most probably I'll use it laying on a frame
08:00 PM robotustra: and 4) I can put and remove garbage tray easily
08:01 PM robotustra: Tom_L, I don't need precise cad for screw, just a scematic one
08:01 PM robotustra: and I can do it myself fast, I don't need a photo realism
08:06 PM rue_shop3: ok, so the board for controlling the solder dispencer is done
08:06 PM rue_shop3: but there was a casualty, the gnd and +12 got mixed up, I lost a A4988 driver
08:07 PM rue_shop3: it got worse after the driver board was hit with a malette a few times
08:07 PM rue_shop3: but I'm ok now
08:08 PM rue_shop3: I hvae a working design for hte new helper arms
08:21 PM rue_mohr: well I haven't worked out the shoulder yet
08:22 PM robotustra: pics?
08:24 PM rue_mohr: hah you just made me put the work yea in my code
08:24 PM rue_mohr: so in the art of what I was trying to say
08:24 PM rue_mohr: yea
08:24 PM * rue_mohr falls asleep
08:24 PM rue_mohr: nono, dot product
08:24 PM rue_mohr: slleeep
08:25 PM robotustra: I suspect, that the main goals of what ppl doing is TO GET A PIC
08:29 PM rue_mohr: hahahahahahaha
08:30 PM rue_mohr: I said, I 'm just here to take over the world
08:30 PM robotustra: and show it to others
08:30 PM robotustra: take a queue
08:31 PM rue_mohr: ah oh dear lets
08:31 PM rue_mohr: seeeeee
08:33 PM rue_mohr: cnc4 has its new home
08:33 PM rue_mohr: http://ruemohr.org/~ircjunk/projects/cnc4/p1090553.jpg
08:34 PM rue_mohr: I relaly need to fix that speed regulator
08:34 PM rue_mohr: aaanyhow
08:40 PM robotustra: does it mill steel?
08:40 PM rue_mohr: only if I oops
08:40 PM rue_mohr: suppposed to use brass anchoring screws, so it shouldn't happen
08:46 PM robotustra: got this kit http://store.makeblock.com/buy/ultimate-2-0-10-in-1-robot-kit
08:46 PM rue_mohr: http://ruemohr.org/~ircjunk/projects/helpinghands/p1090570.jpg
08:46 PM robotustra: for kids, but will play myself
08:46 PM rue_mohr: I'm rebuilding this http://ruemohr.org/~ircjunk/projects/helpinghands/p1090428.jpg
08:47 PM rue_mohr: http://ruemohr.org/~ircjunk/projects/helpinghands/p1090566.jpg this one I made for ma, their bbq lighter necks
08:47 PM rue_mohr: but its not quite right for me
08:48 PM robotustra: "3rd arm"?
08:48 PM rue_mohr: technically 3, 4, 5, 6
08:49 PM robotustra: xTra arm
08:49 PM robotustra: there only 3 motors in the kit
08:49 PM robotustra: shit
08:50 PM rue_mohr: servos or dc motors
08:50 PM robotustra: DC+ reductor
08:50 PM robotustra: http://store.makeblock.com/image/cache/catalog/n/471/1.Robotic_Arm_Tank_4__68308-500x500.JPG
08:51 PM robotustra: ah, the board has only 3 drivers
08:53 PM robotustra: ok, will try to make an autonomous robot with gripper
08:53 PM robotustra: which will navigate and grep everything
08:57 PM robotustra: ah, it's servos
08:57 PM robotustra: they have an optical encoder
08:57 PM robotustra: on a shaft
09:09 PM rue_mohr: http://ruemohr.org/~ircjunk/projects/solderserver/p1090552.jpg
09:09 PM rue_mohr: http://ruemohr.org/~ircjunk/projects/solderserver/p1090560.jpg
09:10 PM rue_mohr: http://ruemohr.org/~ircjunk/projects/solderserver/p1090572.jpg
09:14 PM rue_mohr: <<
09:14 PM rue_mohr: >>
09:15 PM rue_mohr: hello?
09:18 PM robotustra: soldering robot?
09:18 PM anonnumberanon: Guilty pleasures... http://uploads.im/JoWC6.jpg
09:18 PM rue_mohr: is for when you are tinning wires and stuff
09:18 PM rue_mohr: push button and get more solder, AND it holds it up for ya
09:19 PM rue_mohr: interesting
09:19 PM rue_mohr: I'v heard of c4labs before
09:19 PM robotustra: anonnumberanon, do you know how to resize pics?
09:22 PM rue_mohr: I do I do,
09:22 PM rue_mohr: mogrify -verbose -geometry 640x480 *.jpg
09:22 PM rue_mohr: just, dont do it in the source dir
09:22 PM robotustra: I'm not to you, I'm to anonnumberanon
09:22 PM robotustra: pic is like 3.2M
09:22 PM robotustra: could be like 10 times less
09:31 PM robotustra: pretty sure Tom is doing his mill
09:33 PM anonnumberanon: robotustra this is a reasonable size
09:33 PM anonnumberanon: Comes from my phone. Cant resize.
09:35 PM Tom_L: robotustra, i did the cad for accurate dimensions
09:35 PM anonnumberanon: I was hesitating between the wooden case and the clear and black platicase.
09:36 PM robotustra: Tom_L, and?
09:36 PM Tom_L: you were talking about ballscrews before
09:36 PM Tom_L: i was just reading
09:36 PM robotustra: ok
09:37 PM rue_mohr: k
09:37 PM robotustra: no metal work today?
09:37 PM Tom_L: no
09:37 PM robotustra: I also was lazy today
09:37 PM rue_mohr: suspense is fatal in these quantities you know
09:39 PM rue_mohr: cmon cmon, there isn't much jaws theme music lefT!
09:42 PM anonnumberanon: sameh4 very nice
09:44 PM anonnumberanon: And lets start using bottom level code instead of low level. Otherwise recruiters think you have a low level of coding. True story.
09:46 PM rue_mohr: hah
09:46 PM robotustra: groundlevel is better
09:47 PM anonnumberanon: manuel_1 you could use redundancy like they do with space bound hardware
09:47 PM anonnumberanon: 2 of each sensors and/or logic circuits
09:47 PM robotustra: anonnumberanon, read the whole log before write :)
09:49 PM rue_mohr: http://ruemohr.org/~ircjunk/projects/helpinghands/p1090556.jpg
09:49 PM rue_mohr: printing those was intersting
09:51 PM robotustra: you just bent them after?
09:51 PM rue_mohr: bingo
09:52 PM rue_mohr: new elements to 3d printing
09:52 PM anonnumberanon: manuel_1 study what happens when a fan breaks (voltages probably)
09:52 PM anonnumberanon: and listen for the symptoms constantly.
09:53 PM robotustra: ok, I go sleep
10:12 PM rue_mohr: <rue_mohr> http://ruemohr.org/~ircjunk/robots/frankenhex/p1090367.jpg
10:12 PM rue_mohr: <rue_mohr> http://ruemohr.org/~ircjunk/robots/frankenhex/p1090368.jpg
10:12 PM rue_mohr: <rue_mohr> controllerness
10:12 PM rue_mohr: <rue_mohr> 12V in, linear reg for 5v, 3 switching for the servos
10:12 PM rue_mohr: <rue_mohr> and a zero-standby, uC held power switch
10:13 PM anonnumberanon: Gonna prolly do some avr assembly in bed now
10:14 PM anonnumberanon: Oh
10:15 PM anonnumberanon: I received christmas sparky goodies
10:16 PM rue_mohr: in bed with an avr eh?
10:17 PM anonnumberanon: Is that a pro mini on the purple spider?
10:18 PM rue_mohr: nope stm32
10:18 PM rue_mohr: anonnumberanon, you using gavrasm or the one that cant do macros worth ****?
10:18 PM anonnumberanon: Yeah me and avr are having relations.
10:19 PM anonnumberanon: Thinking of cheating on it with another platform too
10:19 PM Tom_L: tmi
10:19 PM * rue_mohr watches tom with his fingers in his ears shouting "LALALALALA"
10:20 PM anonnumberanon: Me? Cant do macros?
10:21 PM rue_mohr: there used to be two arv assemblers, one of them couldn't do macros well
10:21 PM rue_mohr: or for that matter much at all
10:21 PM anonnumberanon: Ill have you know i have over 300 confirmed macro kills.
10:21 PM rue_mohr: or was that pic assembler...
10:22 PM Tom_L: i don't think i ever used pic asm
10:22 PM rue_mohr: you paid for the C compiler?
10:23 PM Tom_L: ccs c
10:23 PM rue_mohr: oh the looks like talks like but isn't C?
10:23 PM Tom_L: and picbasic i got free somewhere
10:24 PM rue_mohr: anonnumberanon, want some flashing led code in asm for avr, or are you past that?
10:25 PM rue_mohr: mmm cyclecounting
10:25 PM anonnumberanon: Yeah im good about that. Now im counting instructions to get dynamic numbers of loop iterations last always the same.
10:26 PM anonnumberanon: Then i have to integrate that as a working unit within c code.
10:26 PM rue_mohr: http://paste.debian.net/1002637/
10:27 PM rue_mohr: I think the comments are out of sync |-)
10:27 PM Tom_L: ok rue_mohr, this was your night... i took it off so wtf did you get done tonight?
10:27 PM anonnumberanon: Because the c code changes a lot around it but this asm stuff will not change
10:27 PM rue_mohr: pcb for the sodler dispenver
10:27 PM Tom_L: but you said a dc motor would do that
10:28 PM rue_mohr: http://ruemohr.org/~ircjunk/projects/solderserver/p1090572.jpg
10:28 PM rue_mohr: yea, and designing a nema17 geared dc motor and and and, direction is forward, not backwards, not spinning, just forward
10:28 PM rue_mohr: bad designs can be fixed on the next itteration
10:29 PM rue_mohr: so, that pcb
10:29 PM rue_mohr: http://ruemohr.org/~ircjunk/projects/helpinghands/p1090570.jpg
10:29 PM rue_mohr: and that helping hands arm
10:29 PM rue_mohr: so, not much
10:30 PM rue_mohr: woke up at 11:30, was tired by 3:00
10:30 PM Tom_L: more than me
10:30 PM rue_mohr: went shopping with ma
10:30 PM anonnumberanon: Yes it could look something like that.
10:30 PM anonnumberanon: Rue
10:31 PM rue_mohr: anonnumberanon, what are you doing again?
10:31 PM rue_mohr: I prolly know more assembler tricks than you can...
10:31 PM rue_mohr: ... anyhow
10:32 PM anonnumberanon: Trying to beat that elusive microsecond.
10:33 PM rue_mohr: http://paste.debian.net/1002640/
10:33 PM rue_mohr: no idea what your doing
10:34 PM anonnumberanon: I don't like to talk about it.
10:34 PM rue_mohr: wait till morning, then talk about it
10:35 PM anonnumberanon: Ill talk about if i can make it work , there
10:36 PM anonnumberanon: So got a stm32103 its really nice looking and cute
10:36 PM rue_mohr: }-|
10:36 PM rue_mohr: ...
10:37 PM rue_mohr: I'm way too helpfull
10:37 PM rue_mohr: so you think
10:37 PM rue_mohr: :P
10:38 PM rue_mohr: work on your polygon library
10:38 PM rue_mohr: I shouldn't offer anonnumberanon the stm32 stuff?
10:38 PM rue_mohr: no, let him burn on it for a while
10:38 PM rue_mohr: but all that work I did to get it all figured out
10:38 PM rue_mohr: just beleive me now, he's not interested
10:38 PM rue_mohr: it could save him so much time
10:39 PM rue_mohr: wouldyou like me to define not interested?
10:39 PM rue_mohr: *sigh* ok
10:39 PM rue_mohr: not interested:
10:39 PM rue_mohr: no shut up
10:39 PM rue_mohr: :)
10:39 PM anonnumberanon: rue_mohr i accept ripping all your stm32 stuff but once i feel that i can hold my own on avr assembly
10:39 PM anonnumberanon: Which may be soon.
10:40 PM rue_mohr: heh, I didn't do much before looking at the gcc output left me satisfied there was no point in ding it all in assembler
10:40 PM rue_mohr: and , like, portability
10:41 PM anonnumberanon: Hey i asked a few coworkers this
10:41 PM rue_mohr: bad place to stop
10:41 PM anonnumberanon: You have 3 dots on a part, translate the part and rotate it
10:42 PM rue_mohr: been there, done that
10:42 PM rue_mohr: you were there
10:42 PM rue_mohr: remember?
10:42 PM rue_mohr: ugh
10:42 PM anonnumberanon: Then note the new coordinates of the three points and deduce the rotation and translation that were done
10:42 PM rue_mohr: AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
10:42 PM anonnumberanon: Yes i was checking if you remembered.
10:43 PM rue_mohr: and the SCALE
10:43 PM rue_mohr: rotation, translation and SCALE
10:43 PM anonnumberanon: Like if you bring down the part in z?
10:43 PM rue_mohr: FFFFFFFFFFFFFF HAVE TO PUT QA BRICK WALL IN MY NEW HOUSE JUST SO I CAN BEAT MY HEAD AGAINST IT!!!!!!
10:44 PM rue_mohr: scale means the sides are 100 units intead of 50 units apart
10:44 PM rue_mohr: quiz, how do you know if a point is on a line?
10:45 PM Tom_L: you can't see it
10:45 PM Tom_L: it's hiding behind all the other points
10:45 PM rue_mohr: too slow, answer is dot product from point to line ends
10:45 PM rue_mohr: 8-S
10:45 PM rue_mohr: Tom_L, would you like to use the new machine for pcb drilling?
10:45 PM anonnumberanon: Look around the line. If there are points then the point is on the line
10:45 PM Tom_L: not particularly
10:45 PM rue_mohr: k
10:46 PM Tom_L: FR4 is too hard on equipment
10:46 PM rue_mohr: I have that library anonnumberanon was talking about that I wrote specifically for that
10:46 PM anonnumberanon: Yes so last time we talked about it
10:46 PM anonnumberanon: You had found the right math to do it
10:47 PM rue_mohr: you pick 3 points in the drill file, give the code the machine co-ords for them in the real world, and it does all the mapping to locate all the other holes
10:47 PM anonnumberanon: And i was bitter that i couldnt solve it
10:47 PM rue_mohr: so you dont ahve to do any painfull board alignment
10:47 PM anonnumberanon: Yes, however ther still remains a prob
10:47 PM rue_mohr: anonnumberanon, keep trying, make it a challange
10:48 PM anonnumberanon: I want to
10:48 PM rue_mohr: if you feed it a equalateral, yes, your screwed
10:48 PM * Tom_L goes to bed
10:48 PM anonnumberanon: But these days i have to pick my battles
10:48 PM rue_mohr: anonnumberanon, in the log, there is all about how I did it
10:48 PM rue_mohr: it was a glorious victory
10:48 PM anonnumberanon: Anyway so the remaining prob is that you need a really accurate point locator.
10:48 PM anonnumberanon: Gn tom
10:48 PM rue_mohr: taught me LOTS about how to sole problems in general
10:49 PM rue_mohr: gnight Tom_L
10:49 PM rue_mohr: shoudl I sare the lesson?
10:49 PM rue_mohr: no
10:49 PM rue_mohr: aaawe what fun is having learned it then?
10:49 PM rue_mohr: keeping it from the human race
10:50 PM rue_mohr: thats sucky fun, I want fun I can share
10:50 PM rue_mohr: they dont understand
10:50 PM rue_mohr: but, if I tell them, maybe they will?
10:50 PM rue_mohr: no, your just dreaming
10:50 PM anonnumberanon: Well i wont get into it cause then i wont focus on the other stuff
10:50 PM rue_mohr: "dream until your dreams come true" THATS what you told me!
10:50 PM rue_mohr: it was a joke, sorry
10:51 PM anonnumberanon: I work better sequentially even tho you in parallel
10:51 PM anonnumberanon: I still have to decide if ill do any metal work.
10:51 PM anonnumberanon: 5 days here and its below freezing all day
10:52 PM rue_mohr: light a fire
10:52 PM anonnumberanon: Would unbox my drill press and set it up, to have to disassemble it to bring it back to my place
10:52 PM anonnumberanon: Garage has ni heater
10:52 PM anonnumberanon: No
10:52 PM rue_mohr: bummer
10:52 PM rue_mohr: heater? no, just start a fire
10:53 PM anonnumberanon: But i did work on the trash inside that used up half of it
10:53 PM anonnumberanon: No it will create too many discussions with my parents.
10:53 PM * rue_mohr looks at rue_mohr
10:53 PM rue_mohr: k
10:53 PM anonnumberanon: They are naysayers
10:55 PM rue_mohr: rue_mohr,
10:55 PM rue_mohr: yes?
10:56 PM anonnumberanon: That worksheet i made will make it easier for me tho if i decide to unbox it and work in the cold anyway
10:56 PM rue_mohr: you are wondering what would benifit you most
10:56 PM rue_mohr: yes
10:56 PM rue_mohr: motivation
10:56 PM rue_mohr: ok
10:56 PM rue_mohr: thats my thought
10:56 PM rue_mohr: anonnumberanon, do you like action plans?
10:57 PM rue_mohr: I'm gonna need to use someone else to as leverage on the motivation thing aren't I?
10:57 PM rue_mohr: probably yes
10:58 PM * rue_mohr looks at anonnumberanon
10:58 PM * rue_mohr looks at anonnumberanon
10:58 PM * rue_mohr looks at rue_mohr
10:58 PM rue_mohr: naaaa
10:58 PM rue_mohr: you know, by all measure Tom_L should have had you building the new cnc by now
10:59 PM rue_mohr: ok, whats preventing that
10:59 PM rue_mohr: sanity
10:59 PM rue_mohr: so, ..... theres still some left?
10:59 PM rue_mohr: ..... interesting point
10:59 PM rue_mohr: tea?
10:59 PM rue_mohr: yes, dont mind if you do
11:03 PM anonnumberanon: I would to locate aluminum plate and thick steel as well as buy a tap and bits locally
11:03 PM rue_mohr: cross product?
11:03 PM rue_mohr: no, dot product
11:03 PM anonnumberanon: Im away from the home base
11:04 PM rue_mohr: I gave up trying to help you save money
11:04 PM rue_mohr: buy some tapping compound for the aluminum
11:04 PM rue_mohr: rue_mohr!
11:04 PM rue_mohr: what?
11:04 PM rue_mohr: dont bother with the advise
11:04 PM rue_mohr: :P
11:05 PM anonnumberanon: Beezwax?
11:05 PM rue_mohr: he'll snap off a few and then maybe figure it out
11:05 PM anonnumberanon: Thats how i like it rue
11:06 PM rue_mohr: can I tell him the best part about snapping off a HSS tap in aluminum?
11:06 PM rue_mohr: no
11:06 PM rue_mohr: I'm sure he'll buy the carbide ones anyhow
11:06 PM rue_mohr: hah
11:08 PM rue_mohr: whoa, its only 9:00
11:19 PM anonnumberanon: Damn its -6 c outside no wonder
11:19 PM anonnumberanon: Well rue no
11:19 PM anonnumberanon: For bits i havent made a choice yet
11:19 PM anonnumberanon: Hss is good
11:19 PM anonnumberanon: Slow speed,
11:20 PM anonnumberanon: Beezwax as lube
11:21 PM rue_mohr: mmmmm
11:21 PM anonnumberanon: Was thinking cobalt drill bits
11:21 PM anonnumberanon: https://www.amazon.com/gp/aw/d/B015J5HU4Y/ref=mp_s_a_1_2?ie=UTF8&qid=1514438426&sr=8-2&pi=AC_SX236_SY340_QL65&keywords=dewalt+metal+drill+bit+set&dpPl=1&dpID=61r0iI6hI7L&ref=plSrch
11:21 PM anonnumberanon: For aluminum and steel
11:21 PM rue_mohr: can I pay you to ship me your dull ones?
11:22 PM anonnumberanon: Why would they go dull?
11:22 PM anonnumberanon: Are you nagging?
11:22 PM rue_mohr: }:-] oh this will be a trip
11:22 PM anonnumberanon: Rue is nagging again instead of passing on good info
11:23 PM anonnumberanon: Like an honest irc citizen
11:23 PM rue_mohr: all I'm saying is I think I'd be willing to pay shipping on the ones that go dull on ya
11:23 PM anonnumberanon: If(moin){gib_info;}
11:24 PM anonnumberanon: If they have a coating
11:25 PM rue_mohr: they do
11:25 PM anonnumberanon: Once that is die you cant sharpen it back onto the bit
11:25 PM anonnumberanon: Or can you
11:25 PM rue_mohr: they go dull at the same rate as the ones without the expensive caoting, but yea, they have a coating
11:28 PM anonnumberanon: Ok. Any info on limiting dullness
11:28 PM anonnumberanon: Moin
11:28 PM anonnumberanon: MOIN MOIN
11:28 PM anonnumberanon: O
11:28 PM anonnumberanon: I
11:28 PM anonnumberanon: N
11:30 PM rue_mohr: well, bench grinder
11:30 PM rue_mohr: but thats another chapter
11:30 PM rue_mohr: you have a hammer, with no claw
11:30 PM rue_mohr: you can hammer nails in
11:31 PM rue_mohr: you have no nail puller
11:31 PM rue_mohr: rue_mohr, he wont get that, your analogies are awefull
11:31 PM rue_mohr: whats moin?
11:31 PM rue_mohr: dunno, more information?
11:31 PM rue_mohr: I can go with that
11:34 PM anonnumberanon: Lets take it one step at a time
11:34 PM anonnumberanon: First:
11:34 PM anonnumberanon: Moin
11:34 PM * anonnumberanon googles dave jones moin
11:36 PM anonnumberanon: This is a meme that every millenial must be aware of
11:36 PM * anonnumberanon cant find, switches to hand search setting
11:47 PM anonnumberanon: Well...
11:47 PM anonnumberanon: Cant find it
11:48 PM anonnumberanon: Oh damn
11:48 PM anonnumberanon: It was mine
11:48 PM anonnumberanon: Not moin
11:51 PM anonnumberanon: https://youtu.be/daxit0dupF0
11:51 PM anonnumberanon: This is it though
11:51 PM anonnumberanon: Mine mine mine
11:53 PM anonnumberanon: 3:40
11:53 PM rue_mohr: I'm having an issue with how to use dot and cross vectors
11:53 PM rue_mohr: products
11:54 PM anonnumberanon: And u pick 12:53 am to work on it