#robotics Logs

Jan 28 2012

#robotics Calendar


00:04 y32704280 decides 'g' is an identifier, and "ravity" isn't f
00:09 Kimlaroux Only g was never used as a command identifier for IRC bots, but the dot often is =)
00:09 any32704280 my bot does not use ! or .
00:09 any32704280 my bot uses nlp
00:09 any32704280 my bot is not welcome online
00:09 any32704280 i am a dumbass
01:04 theBear you know you repeat that enough times and the impressionable will start to believe it
01:04 theBear that's how you mindwash people
01:08 any32704280 it's how they got me to believe it
01:08 theBear you're smarter than that
01:09 any32704280 not from what i hear
01:11 theBear for fucks sake
01:24 rue_shop problem: the "stuff that might come in handy some day" box is overflowing
01:24 rue_shop things like 64 element darlingtom driver boards
01:25 theBear you fucker ! i can't for the life of me find a single darlington in this stupid house
01:26 any32704280 it's just two transistors, make one
01:27 rue_shop theBear, want me to mail you a set of L602 ?
01:27 theBear rue_shop, hardly worth it, i'll save your mail for something i really need
01:27 theBear any32704280, i know, its just 'messy'
01:28 rue_shop I'm glad to see kat getting closer to her name again
01:28 rue_shop I'm gonna really really try to not get her all messed up this time
01:28 any32704280 but doing it yourself, you can mix fets and bipolars, and even pnp/npn
01:29 rue_shop oo you can make aigbt
01:29 any32704280 yeas
01:32 rue_shop hahahahahaga I just pulled out an old dusty piece of paper wrapped around a circuit board with a diagram of an 8253 in the pwm configuration I thought I ust came up with last week
01:34 rue_shop I found another 6 8253 to work with too
01:35 rue_shop I suppose I could turn a rom into a 7 bit pwm genorator
01:35 rue_shop that would make an interseting state machine
01:36 rue_shop hmm I could use the same config I used for the morse code genorator
01:36 rue_shop the computer could use the 8th bit for direction
01:37 rue_shop that would make a pretty small hardware pwm genorator
01:37 theBear hehe, you're like crazy doc emmit brown.... waking up next to your toilet with a smashed clock on the ground and a bump on your head and some weird schem magically lying on your chest :)
01:37 rue_shop but the 8253 would be smaller
01:38 rue_shop but the rom would take up less io space
01:38 rue_shop the 8253 would be 10 bit
01:38 rue_shop but I dont need 10 bit motor speed control
01:38 rue_shop hmm
01:39 e_shop watches with frustration as the scale bala
01:40 rue_shop it looks like I was gonna use the control lines for doing addressing on a parallel port
01:40 theBear i need a small-midsize scale of some kind one of these days
01:42 rue_shop no I wasn't I was going with 4 bit address and 4 bit data
01:42 rue_shop theBear, cant think of a reasonable way to make one
01:42 y32704280 just "took out" a po
01:42 rue_shop kat, you didn't get any on the truck I hope
01:42 any32704280 nope
01:43 theBear i probably could, but as i learned when i recently fixed some dropped digital scales for someone, the only reference weights i have are dirty .au coins (very approximate for .'s of a gram) and a 50g weight off some old scales
01:43 theBear which would probably do at least for what i need right now
01:43 rue_shop water
01:43 rue_shop 1kg/L
01:44 theBear yeah, i can't measure a liter that accurately
01:44 theBear plus my scales won't be that big
01:45 any32704280 for .'s of grams, you'll prolly wanna put it in a windproof box
01:45 rue_shop a mug is about 1.5 cups?
01:45 theBear for this application (mixing stuff for monocrystal experiments) .1/gram would only be just enough accuracy, tho i spose if it's an old-style balance i can do sub-divisions on the scale
01:45 theBear yeah probly, i'm pretty good at filling a mug to cup-size, don't got measuring cus
01:45 theBear cups
01:46 rue_shop imperial measurement
01:46 rue_shop a cup is usually 2/3 of what it takes to fill a cup
01:46 rue_shop in the true way of imperial
01:46 theBear yeah, sounds about right
01:47 theBear give or take, i only got 1 "large standard sized cup" ...
01:47 theBear as in coffee cup sized
01:47 rue_shop I need to rid of more stuff, I still dont have any bench space
01:47 rue_shop I prolly got rid of 1/3 of the pcb stock I had
01:48 rue_shop stripped down a bunch of stuff
01:48 rue_shop to
01:49 theBear i gotta do more stripping... need a big old pan or a little plumbers blowtorch maybe
01:49 theBear just single-gas
02:00 rue_shop heatgun
02:01 rue_shop ok, thats it, I'm going thru the 'might come in handy some day' box
02:02 theBear do i look like a man who owns a heatgun ?
02:02 rue_shop ok, - 16k 'dual ported' ram
02:02 Kimlaroux yes
02:03 rue_shop 'ready to go' z80 based controller (modem)
02:03 Kimlaroux talking about heat guns, I'm in the hunt for one... any recommendations?
02:03 rue_shop maybe I can make the freq counter I'm thinking of outa that
02:04 rue_shop 2x16 lcd panel with 3 buttons
02:04 rue_shop I think this freq counter is falling into place
02:04 any32704280 don't use a paint remover heat gun, too hot
02:04 rue_shop vcr, vfd display with ascii driver chip
02:05 Kimlaroux any32704280, well I want it to melt solder... and I want one with temperature adjustment, not just dual temp
02:05 rue_shop process control front panel, 21 7 seg displays, 8 bar graphs 24 buttons
02:05 any32704280 yeas, but you prolly don't want 1200F
02:06 rue_shop make a time machine outa that one
02:06 rue_shop 48V to 12V dc-dc converters
02:06 Kimlaroux bah why not... if it's too hot you just gotta lower the temp
02:07 rue_shop ? an op amp baord that should be in the stripdown box
02:08 rue_shop dual bar graph with 9x2 14 segment displays
02:08 rue_shop and drivers
02:09 rue_shop board with dual 7448 and 7 segments on it
02:09 rue_shop ehternet surge arrester board..
02:10 rue_shop isa card with pin breakout on it
02:10 rue_shop also has a z80A on it
02:11 rue_shop another industral controler face, still has 2 4x3 keyboards and 6 tripple 7 segment displays on it
02:11 rue_shop telco interface baord from fax machine
02:12 rue_shop icl7136 based analog meter
02:12 Kimlaroux I find this one interesting http://cgi.ebay.ca/ws/eBayISAPI.dll?ViewItem&item=270655300139
02:12 rue_shop odd, 3 digit ADC board and 7 segment
02:13 rue_shop two geared stepper motors with drivers
02:14 rue_shop 'ready to go' 8031 controller board
02:14 rue_shop 8035 controller baord, ready to go
02:15 rue_shop tripple TIL308 board (smart 7 segment displays with built in decoders and drivers and latches)
02:15 any32704280 http://www.ebay.com/itm/ws/200676298335
02:16 rue_shop 5x L298 driver boards
02:16 rue_shop kat, but I want mine cordless! :)
02:17 rue_shop I2c controlled tuner baord
02:17 any32704280 bolt it to your 36v batteries
02:18 Kimlaroux any32704280, I'm in canada, so it's cheaper for me to buy the one I posted... import duties
02:18 any32704280 k
02:18 rue_shop two allen-bradley 7 segment display modules
02:19 rue_shop memory stick baord...
02:19 rue_shop a video switch board
02:19 any32704280 two??? damn, i have 700 dual 7-seg at least
02:20 rue_shop a dual 2.5A stepper motor driver baord
02:20 rue_shop kat, 700?
02:20 any32704280 yeas
02:20 rue_shop another lot purchase?
02:20 any32704280 nope, all from those cable boxes
02:21 rue_shop hmm another level alarm baord that should be in stripdown
02:21 rue_shop ah
02:21 rue_shop another isa board with breakout
02:22 rue_shop 9 character pixel vfd with ascii driver and flash 8051 controller
02:22 rue_shop thats prolly my freq counter there
02:23 rue_shop even got 6 buttons
02:23 rue_shop led laser board of some kind
02:23 rue_shop another isa breakout
02:24 rue_shop well this thing has 4 7 seg, a motorola eprom microcontroller, and a 120v power supply
02:25 rue_shop 68705
02:26 rue_shop the first touch screen control panel I ever made
02:26 rue_shop actaully, at this point in time, the last...
02:26 rue_shop a moisture meter, ... I think
02:27 rue_shop a circuit board I made back in about 89, it takes 8 bit data and uses the right/left and forward reverse of a rc car to transmitt the data to a robot
02:27 rue_shop S L O W L Y
02:28 rue_shop looks like I used a diode rom on it too
02:28 rue_shop I mean literally, made of diodes
02:29 y32704280 has a 12x16 pcb used as a diode
02:29 rue_shop I bet I still have the schematic for this..
02:29 any32704280 i think it was 50 words 36bits wide
02:29 rue_shop a circuit baord I made... forgot what it did
02:30 rue_shop think its a robot controller, lots of T flipflops
02:31 rue_shop I shoudl make a database of crystal and power pins for microcontrollers, this one has the top ground off, but its got an OSD video chip
02:32 rue_shop kat, know what 74 435 is?
02:33 rue_shop cmos line sensor board...
02:33 any32704280 no, and Tiggr is down, so i cannot ask her
02:34 rue_shop board that someone else made, had 12 7 segments on it, LOTS of resistors
02:35 rue_shop it has 11 wires, 1 is common
02:36 rue_shop when I power it up, and strobe thru, it goes 123456789][ (with a few wiring faults)
02:37 rue_shop 2 ethernet jacks
02:37 rue_shop another one of those 68705 things
02:37 rue_shop another telco line interface
02:37 any32704280 cpu, i got 300+ of those too, eprom and mask rom
02:38 rue_shop a servo positioner baord
02:38 rue_shop pcb to a 3 line telephone
02:39 rue_shop heh, keybaord decoder, all chips removed
02:39 any32704280 gnites
02:40 rue_shop gnight
02:40 rue_shop an led VU meter
02:41 rue_shop 5 phase bipolar stepper motor driver (10 wire)
02:41 rue_shop might be a sequencer too
02:42 rue_shop old laptop lcd screen
02:42 rue_shop another 5 phase bipolar stepper driver
02:42 rue_shop 'ready to go' 80196 controller baord
02:43 rue_shop incredibly hackable looking printer display
02:43 rue_shop 'optical motor driver' should be in parts bin
02:44 rue_shop H2S meter
02:45 rue_shop oven controller -> parts bin
02:46 rue_shop printer control panel with driver chips
02:46 rue_shop kr2376 keyboard decoder
02:47 rue_shop proximity detector
02:47 rue_shop or a beam brek , not sure
02:47 rue_shop stereo EQ
02:48 rue_shop an amp on a board... part pile!
02:48 rue_shop control panel baord, M66311 based
02:49 rue_shop ?? whats D8226?
02:55 Kimlaroux it's not AD8226?
02:56 Kimlaroux D8226 - Four-Bit Parallel Bidirectional Bus Driver
02:57 Kimlaroux http://html.alldatasheet.com/html-pdf/155717/ETC1/D8226/94/1/D8226.html
02:58 rue_shop ancient eh?
02:58 rue_shop hmm another 7 segment adc board...
02:59 rue_shop an analog meter panel with nice clicky up/down adjustments
02:59 rue_shop stepper motor and driver board
03:00 rue_shop radio shack power inverter, 6V->12V or 12V->-12V
03:00 rue_shop an inverter I made, any voltage -> short
03:01 rue_shop (parts bin)
03:01 rue_shop ooo one of my baords with all the instrmentation amps on it
03:01 rue_shop ad595
03:01 rue_shop major $$$$
03:01 rue_shop or its the ina101
03:03 theBear hmm... is the linux "parport" (userspace parallel driver) erm, does an app 'grab' it, or is it just a simple port ? just considering if i made a 'bus' running off a parport, what would be a neat/practical way to get various little apps to send data for different clients on the bus
03:03 rue_shop 16 element driver baord, 74595 based
03:04 rue_shop theBear, I dont know if mre than one app can open the parallel port, maybe
03:04 rue_shop another 7 segment adc baords
03:05 theBear it'd KINDA be better if only one app can, then they can just 'grab' the port when they need to do something, and let it go
03:05 theBear otherwise i think i'd need a 'master' app to grab the port and talk to all the other little apps
03:06 rue_shop a clicky digit thing...
03:06 rue_shop theBear, I have a system that you can put a network client on to operate the bus via
03:06 rue_shop er port
03:07 rue_shop ->tcp message server->listening client->parallel port
03:07 theBear erm, server and client are both pc's ?
03:07 theBear oh, server can be on client machien
03:07 rue_shop control baord for am em light!? parts!
03:08 rue_shop theBear, yes, its via plain text to port 77
03:08 theBear interesting... if i get around to it, i'll get back to yer
03:08 rue_shop another analog baord...
03:09 rue_shop theBear, want me to send you the message server to play with later?
03:09 rue_shop you can telnet to it
03:09 theBear rue_shop, i'll just lose it at the moment, maybe later if i finally get the old lappy/dev env/new workshop pc running
03:09 theBear looks like it's still got an avr C installed, wonder if it still works tho
03:10 rue_shop thermal printer....
03:10 rue_shop ooo another instrumentation amp baord
03:11 rue_shop pff I PIC battey meter barod
03:11 rue_shop an AM/FM radio..
03:13 rue_shop rs232 to 20mA converter... heh
03:13 rue_shop ooo programmable keypad lock
03:14 rue_shop keyboard decoder.... huh..
03:14 rue_shop remains of a multimeter
03:15 rue_shop laptop power supply -> parts
03:28 rue_mohr !time
03:29 rue_mohr !time
03:29 rue_mohr !time
03:29 tobbor My watch says its 01:25 Sat Jan 28 2012
03:30 rue_shop laptop connector
03:31 rue_shop another graphic eq, no idea how this one works
03:32 rue_shop some kinda switching power supply
03:33 rue_shop a little joystick baord
03:34 rue_shop another ch3-4 modulator
03:34 rue_shop reaaaaaaaaly old ir demod
03:35 rue_shop a bbq ignighter
03:35 rue_shop cassette amp
03:36 rue_shop hmm a bord I must have been keeping cause its got a 2003 on it
03:36 rue_shop (bin)
03:37 rue_shop rc car board
03:38 rue_shop another rc car board
03:38 rue_shop headphone amp
03:39 rue_shop laptop touchpad
03:39 rue_shop bu6184
03:57 rue_shop last items
03:57 rue_shop 80186 controller board
03:57 rue_shop 8085 controller board
03:57 rue_shop 8085 controller board
03:57 rue_shop two 64 element array driver boards
03:58 rue_shop erp, 3 of them
03:58 rue_shop and another of those smart 7 segment boards
03:58 rue_shop hmm
04:00 rue_shop wonder if I can compile for the 8085
04:03 rue_mohr not with sdcc
04:09 rue_mohr looks like 8085 would have to be assembler
05:25 Overburn hey guys, quick question , would a raspberry pi be suitable for doing some image processing (using opencv) for a robot?
09:06 Univoid hi all
10:58 rue_mohr over...
10:58 rue_mohr Univoid, hi
10:59 Univoid hi
10:59 rue_mohr there have to be about a milolion controller baords out there, why do people always come in asking if they should use board x for y?
11:02 theBear 'cos they're monkies :)
11:02 rue_mohr http://www.divms.uiowa.edu/~jones/step/index.html
11:02 rue_mohr !book mark the stepper motor page
11:08 mortenmj hi. i've learned the theory behind state machines in a previous subject (and made a few fairly trivial ones), but now i'm making my first for a more realistic scenario. in general, is it better to have many states, so that the machine more fully describes the process at hand, or a more minimalist state machine, with some stuff outside the machine?
11:09 mortenmj i was told rue was the guy to ask, but i see he's in bed
11:11 theBear he is ? he talked 10 mins ago
11:11 theBear look harder
11:11 mortenmj i'm just judging by the fact that he's set his name to "rue_bed"
11:11 theBear rue_mohr, oi, this guy wants to talk state machines
11:11 theBear mortenmj, look harder :)
11:14 mortenmj i see :)
11:15 theBear indeed
11:20 rue_mohr state machines?
11:21 mortenmj yes. the finite kind
11:21 rue_mohr cool, software or hardware
11:21 mortenmj software
11:22 mortenmj control system for an elevator. university project
11:22 rue_mohr ok
11:22 mortenmj i'm reading an article now that sums up my woes: «One of the main challenges in becoming an effective state-machine designer is to develop a sense for which parts of the behavior should be captured as the qualitative aspects (the state) and which elements are better left as the quantitative aspects (extended state variables).»
11:22 rue_mohr well breaking it up depends on the problem
11:22 rue_mohr whats the design criteria for the elevator?
11:23 mortenmj in short, it should be responsive and seemingly "fair" (from the viewpoint of the user). the design requirements can more or less be summed up with «it should behave like a real elevator»
11:23 rue_mohr look at state machines in 4 parts, the current state, the next state, the inputs, the outputs
11:24 mortenmj in addition, there are technical requirements such as that it should indicate the floor it's at, it should open the doors for 3 seconds at any floor it's been requested to go to (by someone inside or outside)
11:24 joink mortenmj: :P
11:24 rue_mohr I'll try not to do it for you, what do you have about how to solve it so far?
11:24 mortenmj we should avoid conditions where people on the top floor or bottom floor are left waiting. though that's covered by the "make it act sensibly"-requirement
11:25 rue_mohr mortenmj, side note, in 45 mins I have to do a kids robotics session for 2 hours
11:25 mortenmj i'll try not to keep you nearly that long
11:25 rue_mohr I'd like to talk about it with you for a while
11:26 rue_mohr I'd like to get a sense of your understaning of state machines
11:26 mortenmj well, i've been thinking about what states seem useful to me. right now i've got "idle" (initial state), moving (assuming we're storing the direction in memory, this only needs one state, otherwise, one for up and one for down), halted_open, halted_closed (referring to the doors), stopped (in response to someone inside pressing the stop button, after which all orders are deleted, and it's stopped until someone inside it requests a floor)
11:26 rue_mohr I think that your going to want to use a few machines for a project like that
11:27 mortenmj i've never designed something with multiple state machines
11:27 rue_mohr have a transition table done up?
11:27 mortenmj i'm intrigued
11:27 mortenmj no, not yet
11:27 mortenmj wouldn't it be better to decide which states are needed first?
11:27 mortenmj or, i have an idea in my mind which transitions are legal, of course. but i haven't formalized it
11:27 rue_mohr its easier in software that supports events to have multiple machines, state machines create events to other state machines
11:28 mortenmj i'm writing this in c, by the way. if it makes a difference in any way
11:28 rue_mohr if you draw it up, you can find any omissions/faults
11:28 rue_mohr ok
11:28 theBear heh, told yer rue was the guy to talk to :) thanks rue
11:28 rue_mohr what interface are you working with? a real machine? keyboard/screen?
11:28 rue_mohr theBear, :)
11:29 mortenmj a model of an elevator with a control panel and a small box that moves up and down a rail, powered by an electronic motor. all of it connected to a custom IO PC in a computer
11:29 mortenmj IO PCB*
11:29 rue_mohr sounds like BCIT course
11:30 mortenmj BCIT?
11:30 rue_mohr technical school
11:30 mortenmj norwegian university of science and technology
11:30 theBear wow, that sounds like fun
11:30 theBear i always liked working models
11:31 rue_mohr how many floors on the model :)
11:31 mortenmj 4
11:31 rue_mohr k
11:31 theBear my landlord/ex workmate was a elevator tech for MANY years across several continents
11:31 theBear he's got some stories...
11:32 mortenmj i just drew what i listed above, and i have a useless state. idle and halted_closed are essentially the same thing
11:32 rue_mohr :)
11:32 mortenmj though, halted_closed implies that we're moving between floors, and we've stopped to let someone on or off, so maye not
11:32 mortenmj i.e. idle -> moving -> halted_closed -> halted_open -> halted_closed -> moving
11:32 mortenmj etc
11:33 mortenmj the door could be a small state machine in itself. is that wise?
11:33 rue_mohr close doors->move->open doors
11:33 rue_mohr its a bit simple...
11:34 mortenmj you said you'd use several machines; which do you consider reasonable?
11:34 rue_mohr several state machines gives you exandability
11:34 rue_mohr you should be abel to make a 2 floor model that you can expand to 4 floors and still have work
11:35 rue_mohr I was thinking of the request panels
11:35 mortenmj agreed. i'd consider the design fundamentally flawed if it couldn't service an arbitrary number of floors
11:35 theBear is 2 enough, or would it need to be >2 ? you gotta deal with multiple requests...
11:35 mortenmj each floor (outside the elevator) has an up and down button
11:35 rue_mohr but I'm not sure if that would be a good idea or not, hmm, its an interesting problem to break up
11:35 mortenmj so i can have 8 requests in queue
11:36 mortenmj in addition there's 4 buttons inside the elevator, for selecting floors
11:36 theBear elevators are always an interesting problem... things like waiting time vs skipping floors (or picking people up on the way) and multiple shafts changes that
11:36 rue_mohr mortenmj, can you stick around 6 hours or so?
11:36 mortenmj as well as a stop button, where all requests are deleted, and an obstruction sensor, where if it triggers we're just supposed to wait until it goes off
11:36 mortenmj rue_mohr: yes
11:36 rue_mohr iirc elevators usually finish doing the up requests before they start going down
11:36 mortenmj that is my plan
11:37 mortenmj i.e. if someone on the first floor requests the elevator, and selects fourth floor, we'll pick up anyone in between that's going up
11:37 mortenmj and we'll always service floors as we pass them, so if the new guy getting on at 2nd wants off at 3rd, we stop there first, even though 4th was requested first
11:37 mortenmj slightly less fair, but much more efficient
11:38 rue_mohr In the tech school we implemented an elevator in a plc, and I cant remember how it went
11:38 mortenmj i did that last year (my first)
11:38 mortenmj this is the exact same setup, but now we're using c
11:38 mortenmj the state machine i used last year had the states idle, up_halted, up_moving, down_halted, down_moving and alarm
11:39 mortenmj it worked pretty well
11:39 mortenmj the requirements are more stringent now though
11:39 mortenmj though, not much. it would work
11:39 mortenmj i'd just like to try and do better
11:44 mortenmj i suppose that machine was more of the extreme end with regards to putting stuff in memory variables
11:49 rue_shop erp
11:50 rue_shop its easier to build something with more clear states now
11:51 mortenmj rue_mohr: how do i go about deciding which states i should use?
11:51 mortenmj rue_mohr: i only know the theory about how mealy and moore machines work. not how they're designed in the real world
11:52 mortenmj is something like this reasonable? http://wwwhome.ewi.utwente.nl/~zwiers/college/graphics/gulliver2/elvStateDiagram.gif
11:52 mortenmj or would you scrap several of those in favor of more details stored in memory?
11:54 rue_shop mortenmj, process of elimination
11:55 rue_shop state machine ahve 4 components, inputs, outputs, previous state, and next state,
11:55 mortenmj and current state?
11:56 rue_shop if you took all the combinations of inputs,a dn crossed them with all the combinations of outputs, the only thing left to differenciate between a different situation upon the same input/output combination is the state
11:56 rue_shop whch is a great paragraph, but dosn't help much
11:57 rue_shop mortenmj, one of current state or previous state will be your current state
11:58 rue_shop ok, lets try this, write down all your inputs and outputs, for each group, work out how many situations that group can be in
11:58 mortenmj what do you mean by group?
11:58 rue_shop for example, a middle floor can be requesting nothing, up, down, or both. thats 4 'states' that input can be in
11:59 mortenmj so with 4 up buttons and 4 down buttons we can be in 4x4=16 states
11:59 rue_shop I'v never actually created a process for design of state machines
12:00 rue_shop group inputs and outputs
12:00 mortenmj what should i group them by?
12:00 rue_shop some things have only 3 valid states, like the elevator motor, has up down and stop
12:00 rue_shop this is a bit of a 'start somewhere' approach
12:00 mortenmj the motor takes a value from -300 to 300, but i should probably just choose a reasonable speed for each direction
12:01 rue_shop yup
12:02 mortenmj still not sure how you mean i should group the IO
12:02 rue_shop logically
12:02 mortenmj but as you said, each floor has an up and down button, which gives 4 states per floor. that's 16 states right there. i think those should be grouped
12:03 rue_shop think of it as 4x4 states
12:03 mortenmj inside the elevator, there's a panel with a button for each floor, as well as the stop button. we can have 0-4 floors selected OR the stop button selected (stop button deletes all requests)
12:03 rue_shop how many valid states are there for the panel in the elevator, including the little bratt that just pushed all the buttons
12:04 rue_shop does your carridge have an EM stop button?
12:04 mortenmj 4! = 24
12:05 rue_shop is it not possable to have any combination of requests for the 4 floors?
12:05 rue_shop no
12:05 rue_shop oh
12:05 mortenmj yes, we can have any combination of 0 to 4 requests
12:05 rue_shop know how?
12:05 mortenmj no floors, all floors or anything in between
12:05 rue_shop yea, you cant request the floor your on
12:05 mortenmj i think you can
12:05 mortenmj it should just make the doors open, though
12:06 theBear 'real' elevators tend to pause at the main/'bottom'(often) floor too
12:06 theBear ie. in idle time
12:06 theBear much more chance of someone coming thru the lobby than out of a floor
12:06 mortenmj meaning if there's nothing happening for a while they go to the bottom floor?
12:07 theBear assuming the bottom is a lobby and not a carpark yeah
12:07 theBear or not a basement
12:07 mortenmj agreed. that makes sense
12:07 theBear then again if you have several lifts, you might choose to make 1 or 2 go there and the others stay where they 'landed'
12:07 mortenmj only 1 lift here
12:08 theBear good point, i was just thinking of the expandable without alteration concept, but at the same time, i recently had my 'knock out' pain pills, so i'm rapidly not making sense
12:08 mortenmj well, some extensibility is good. like being able to set any number of floors.
12:09 mortenmj however, too much extensibility (or generality) means you never finish your project
12:09 mortenmj designing a system that can handle 10 elevators when you're only supposed to handle one is an example of that
12:10 mortenmj complexity goes up exponentially when you go from one elevator to multiple. though, it might not increase that much from say 3 to 5. from 1 to 3 is a completely different project though
12:14 mortenmj rue probably left to do his thing, so i'll be back in a while
12:14 theBear :)
14:41 rue_mohr almost back
14:49 rue_mohr food is on stove...
14:50 rue_mohr yea I dont recommend making multi-elevator co-ordination part of the project scope
14:54 any32704280 it's more complicated: if elevator is moving up at max speed between 4th and 5th floors, and someone on 5 presses the up button, do the elevator brakes slam on to stop on 5?
14:55 any32704280 and what if the elevator is already at max occupancy weight?
14:55 rue_mohr yes, the inertia causes the people who were in the elevator to get to the 6th floor while people get on the elevator at the 5th floor
14:55 any32704280 yeas
14:55 rue_mohr its verry efficient that way you see
14:56 any32704280 only if the elevator has no ceiling
14:56 rue_mohr you dont need to actually make hte elevator able to get to the 6th floor
14:56 rue_mohr mortenmj, what do you have sofar?
14:57 y32704280 points out that elevators installed in the 1960's were all relays, no solid state, no vac t
14:57 rue_mohr new kid in the robotics course, into programming, has some BASIC experiance, so I set him up on some steppers and he did pretty good
14:57 rue_mohr kat, that would make pwm a bit bumpy
14:58 any32704280 used a modulated field mg set
14:58 any32704280 and yeas, speed changes were very noticeable
14:58 rue_mohr well yea or that
15:11 mortenmj rue_mohr: back. what do i have in terms of what?
15:12 mortenmj rue_mohr: i have very little. i have a use case diagram, and that's about it
15:12 mortenmj rue_mohr: i'm trying to figure out how best to do this before i plan my state machine, so i don't get ahead of myself
15:12 mortenmj rue_mohr: so other than a vague idea of how this should work, i have nothing
15:14 mortenmj any help would be very welcome
15:23 rue_mohr ok, lets try to do it out, see what we end up with
15:24 rue_mohr list out the inputs (not bit wise inputs but group inputs like the panel on floor 2) and lets see what we have
15:24 Univoid hi guys
15:25 rue_mohr no I think we kicked out the high people, they were not making sense anymore
15:26 mortenmj rue_mohr: physically there's one panel with everything on it next to the elevator model. logically i would group them into "up" and "down" request buttons on each floor, the four floor select buttons inside the elevator, the stop button inside the elevator, and the obstruction sensor
15:26 Univoid i am trying to start out in robotics what is the best type of micro controller is it the PIC ones or the atmel ones?
15:27 rue_mohr uniqanomaly, atmel
15:27 rue_mohr Univoid, atmel
15:27 Univoid thank you
15:27 rue_mohr like the arduino
15:27 Univoid I have been trying to find out what sort of things i need to program one but i saw an AVR programmer is that all i need?
15:28 rue_mohr mortenmj, we have 2x4 request panels, and a 4 button panel in the elevator, we have a obstruction sensor (is there a door open, door closed sensor?)
15:28 rue_mohr sorry I'm still distracted
15:28 Univoid and are there any alternatives ? sorry if i sound noobish but i am a noob lol
15:28 rue_mohr Univoid, how are you at programming ?
15:29 mortenmj rue_mohr: the obstruction sensor is vaguely defined in the assignment, but i think it's supposed to represent the aggregation of sensor inputs from the door and other sensors you'd have in an elevator that should make it stop instantly
15:29 Univoid good i know c++ quite advanced
15:29 mortenmj we're supposed to stop as soon as the obstruction signal goes high and resume when it goes low again
15:29 Univoid its the hardware side i struggling more with
15:29 mortenmj Univoid: you'll need to be good at C and low level memory management, but you should be fine
15:29 rue_mohr even going up/down?
15:30 Univoid its the what i need to get started that eludes me
15:30 mortenmj rue_mohr: any time the obstruction sensor trips, we halt. any time
15:30 rue_mohr Univoid, use C, not c++ becoase a microcontoller dosn't have enough memory to store dynamic objects
15:30 rue_mohr mortenmj, ok
15:30 mortenmj rue_mohr: it's not represented by any sort of sensor in the physical setup. it's just a simple on/off switch
15:30 Univoid if i buy a microcontroller what else do i need to effectively program it?
15:30 mortenmj so i think it's supposed to represent any sort of malfunction
15:31 Univoid obviously i am not talking about circuitry but programmer cables etcc
15:31 mortenmj Univoid: i suggest you get one of the stk development boards, if you're interested in building your own hardware
15:31 Univoid do they come with programmer cables?
15:31 mortenmj Univoid: for the later stk models, you just need a usb cable. it's probably even bundled
15:31 mortenmj in addition, just get a handful of 8-pin cables
15:32 mortenmj for connecting the stk to prototype PCBs you design yourself
15:32 mortenmj sorry, 10pin
15:33 mortenmj they look like this: http://www.usdigital.com/assets/images/galleries/ca-c10-f-c10_0.jpg
15:34 mortenmj i have the stk500, so i can't really say how the new ones work. i'd look into it if i were you
15:34 mortenmj http://upload.wikimedia.org/wikipedia/commons/9/92/Atmel_STK_500_DSC00559_wp.jpg
15:34 mortenmj as you see it has a bunch of outputs that take those 10pin cables. those are connected to the pins on the µC
15:34 mortenmj (far left, next to the red buttons)
15:35 Univoid i would prefer to do my first microcontroller on breadboard from screatch
15:35 mortenmj i see no reason for that at all, but okaay
15:36 Univoid so i understand what is needed etc but need to know what interface i need to program it
15:36 rue_mohr you can breadboard an avr
15:36 mortenmj if you're really determined to use a breadboard from day 1, you need an in system programmer
15:36 rue_mohr or get a pre-flashed contorller
15:36 mortenmj if i were you i'd learn the basics of µC programming using a dev board though
15:37 mortenmj hell, you can even program the µC on the STK before you move it to your PCB, if you want to
15:37 Univoid its more i want to learn electronics on the way
15:38 Univoid so starting from scratch so i understand the connections to the micro aswell
15:38 mortenmj i understand that, but you'll be doing two things you don't know how to do at once, and it will make it that much harder to figure out where you're doing wrong
15:38 mortenmj it's not stupid or anything, it's just not what i would do
15:38 Univoid i dont want to get a stock board and not understand how it works, it might seem ambitous i have a basic grasp of electronics
15:39 mortenmj you're looking at 8bit, right?
15:39 mortenmj you need this to program it: http://www.atmel.com/dyn/products/tools_card.asp?tool_id=2726
15:39 Univoid you can get 32 bit ones can you not?
15:40 mortenmj yes, but programming those is pretty much like programming a normal computer
15:40 mortenmj they run linux if you like
15:41 Univoid well ill prob start with 8 bit then
15:41 Univoid so if i breadboarded an avr interface then all i need is an avr programmer then dont i?
15:41 rue_mohr 8 bit is fine, if you doing heavy computations, get a small ARM computer
15:42 mortenmj anyway, you need some sort of in-system programmer. i've seen other models besides the one i found for you there, so look around at the other models they have.
15:42 rue_mohr I'd like to sugget ATMEGA324
15:42 mortenmj Univoid: no, you need all sorts of stuff on the input pins
15:42 rue_mohr toms makes programmers for a descent price
15:42 mortenmj Univoid: which is why i'm suggesting you're overextending yoursel
15:42 rue_mohr hmm toms not here right now
15:43 mortenmj Univoid: the thing is, to even be able to flash this thing you'll need to design a small setup around it
15:43 mortenmj Univoid: to make it do anything (as in take some sort of input and act on it) you need even more stuff
15:43 mortenmj which is obviously what you need to do at some point down the ine
15:43 mortenmj line*
15:43 Univoid ive read about it and will need to have is it 6 pins connected to certain pins on the micro controller?
15:44 mortenmj but to just make it blink lights and react to buttons, you might as well stick to a dev board
15:44 mortenmj it's what they're for
15:44 mortenmj just get an stk
15:45 mortenmj hardware design and µC programming are two separate disciplines. learn them separately, then combine them
15:47 rue_mohr ok where is a piece of paper
15:48 rue_mohr lets take on a 2 floor elevator where you can ask for up at the top floor and down at the bottom floor
15:48 mortenmj ok
15:48 e_mohr d
15:49 rue_mohr your in denmark?
15:49 rue_mohr just thinking of time offset
15:49 mortenmj norway
15:49 mortenmj it's 22:40
15:49 rue_mohr I'm GMT-8
15:49 mortenmj but it's a saturday, so i'm good
15:49 rue_mohr at some point your brians just gonna shut down on ya tho
15:49 mortenmj i'll let you know
15:50 mortenmj so we got our two-floor elevator
15:50 rue_mohr ok I see 3 panels, each with 2 buttons
15:50 mortenmj and the stop button
15:50 rue_mohr ok
15:50 mortenmj if you wanna include that at this stage
15:51 rue_mohr global everywhere stop on carridge button stop?
15:51 mortenmj and the obstruction sensor if you want to include that too
15:51 mortenmj i'm not sure what you mean by that
15:51 mortenmj hm, yes
15:51 mortenmj we stop, even if between floors
15:51 rue_mohr where is the stop button, on the elevator?
15:51 mortenmj inside, yes
15:51 rue_mohr so I have 4 input groups
15:52 rue_mohr lower lobby, upper lobby, elevator and obstruction
15:52 mortenmj agreed
15:52 rue_mohr is obstructiona nd em stop the same?
15:52 mortenmj no
15:52 rue_mohr hmm how do they differ?
15:53 mortenmj when stop is pressed, we stop instantly, and delete all requests (either from inside or outside the elevator)
15:53 mortenmj when obstruction is tripped, we wait for it to disappear
15:53 mortenmj it's more of a pause
15:53 rue_mohr ok
15:53 rue_mohr stop is a reset and halt
15:53 mortenmj yes. on stop we remain halted until a new selection is made from inside the elevator
15:53 rue_mohr ok
15:54 rue_mohr do we have any other inputs?
15:54 mortenmj no
15:54 rue_mohr outputs
15:54 rue_mohr elevator motor
15:54 rue_mohr it will have up, down, stop
15:54 rue_mohr and we must have a door motor
15:54 mortenmj floor indicator, i.e. two leds where we light up the one that indicates the current floor
15:55 rue_mohr ah
15:55 rue_mohr ok
15:55 mortenmj there's also a light for each of the floor inputs. i.e the ones outside and inside
15:55 rue_mohr at the top or by the request button?
15:56 rue_mohr some of those are the same
15:56 rue_mohr iirc the 'current flood indicator' is the same above the lobby doors as in the elevator
15:56 mortenmj yes
15:56 mortenmj i agree
15:57 mortenmj i think it makes sense to think of it as the button indicators being next to their respective buttons
15:57 rue_mohr and to 'rid myself' of the request buttons I'm going to say the request panels are independant state machines that handle operating their own lights
15:57 rue_mohr er, the lights on them
15:58 rue_mohr were missing an input for the elevator position
15:58 mortenmj rue_mohr: physically it looks like this: http://i.imgur.com/nGJdJ.png
15:58 e_mohr waits a
15:59 mortenmj rue_mohr: yes, sorry. those are in yellow on the diagram. it's a proximity sensor of some sort
15:59 rue_mohr etg is ..
15:59 rue_mohr ok
15:59 mortenmj etg is floor
15:59 rue_mohr we have just 4 position sensors?
15:59 mortenmj yes
16:00 mortenmj stoppbryter is a sensor that stops the elevator from going outside its track. it just cuts power, and isn't part of the control system
16:00 rue_mohr "stopppbryter" is limit switch?
16:00 rue_mohr ok
16:00 mortenmj actually, i made a mistake earlier
16:00 rue_mohr so out 2 floor version has 2 floor sensors
16:00 mortenmj as you can see, the top floor has no "up" button, and the bottom floor has no "down" button
16:01 rue_mohr right, but I'm going to include them for now
16:01 mortenmj i should have had this in front of me when i answered your question. i apologize
16:01 rue_mohr I mentioned we would have them anyhow
16:01 rue_mohr it will help with expanding the machine later
16:01 mortenmj right
16:02 mortenmj so we put them all in the model, and make some of them "dead" later?
16:02 rue_mohr :) just dont hook up a buton to the input
16:02 rue_mohr secret 'heaven' and 'hell' request buttons not implemented
16:03 Univoid is an avr dragon suitable?
16:03 rue_mohr Univoid, dont use the dragon, lots of people have problems with them
16:03 mortenmj it's neat, but more like a toy than a serious dev tool
16:03 mortenmj i got one for free that's here somewhere
16:03 rue_mohr Univoid, dont mean to sound rude, but you know there is #avr too?
16:03 mortenmj it has a speaker and some stuff on it that's neat, but otherwise it's useless
16:03 mortenmj more like a demo thingy
16:05 rue_mohr ist nin translation for door motor
16:05 rue_mohr is it there?
16:06 Univoid thanks for ur help guys
16:06 rue_mohr Univoid, np
16:06 mortenmj rue_mohr: according to the assignment, there's a light marked "DOOR" that isn't on the drawing. we indicate the door being open by turning the light on
16:06 rue_mohr come back and tellus your progress
16:06 mortenmj there's no physical door
16:07 rue_mohr ok
16:07 rue_mohr so I"ll make an output for that too
16:07 Univoid this has been one of the most helpful irc rooms i have been in thanks again
16:07 mortenmj i hope i was of help, Univoid
16:07 Univoid u was
16:08 rue_mohr shall I summarize what I have so far again?
16:09 mortenmj please
16:09 rue_mohr mortenmj, your english seems fine, shall I try to simplify what I say for ya?
16:09 mortenmj no
16:11 rue_mohr input: obstruction: 1 bit top floor lobby: 2 bits bottom floor lobby: 2 bits shaft sensor: 2 bits in-elevator request panel: 2 bits in-elevator stop: 1 bit
16:11 rue_mohr output floor indicators: 2 bits lift motor: 2 bits door opener: 1 bit
16:12 e_mohr w
16:12 mortenmj yup
16:13 mortenmj i'm with you
16:13 rue_mohr now that all our inputs and outputs are defined we just have to 'stitch' togethor all our states
16:15 mortenmj you mean encoding the states?
16:15 rue_mohr nope, we aleady have them
16:15 rue_mohr prettymuch
16:15 rue_mohr brb
16:21 rue_mohr Ich habe wieder
16:21 rue_mohr I dont know if my normal approach to this will work
16:21 mortenmj why wouldn't it?
16:22 rue_mohr there isn't usually as much going on
16:22 rue_mohr I'm gonna try :)
16:23 rue_mohr there are 10 bits of input, and 5 bits of output
16:24 rue_mohr the only missing peice is how much state control information is needed
16:25 rue_mohr the stop button is easy, anytime its high it resets everything to 0
16:26 rue_mohr I wonder if my state machine builder could pull this off
16:26 rue_mohr anyhow
16:27 rue_mohr the obstruction sensor isn't part of the state machine, its just an interrupt on the signal to the lift motor
16:27 rue_mohr my program can do up to 16 bits of input... hmm
16:28 rue_mohr so, that means we have 9 bits of input, 5 bits output
16:28 mortenmj do we really need states for a button being pressed or not? that seems strange
16:29 mortenmj why not just put that information in a data structure?
16:29 any32704280 too many permutations
16:29 rue_mohr beleive it or not, this whole thing can be done in a lookup table
16:29 rue_mohr any32704280, no its not, there are only 9 bits of input
16:29 rue_mohr thats only 512 input combinations
16:29 any32704280 plus travel info
16:29 rue_mohr travel direction is 1 bit
16:30 mortenmj rue_mohr: how many states are you thinking here?
16:30 rue_mohr mortenmj, every possable input state is 512 combinations
16:30 rue_mohr and they are not all valid
16:30 mortenmj we're not doing 512 states
16:30 rue_mohr we dont have to
16:30 mortenmj are you thinking about doing a memoryless state machine?
16:31 rue_mohr well, I'm looking at how this could be done in a huge memory table, and then gonna look at how it would turn into code
16:31 mortenmj i don't see how floor x qualitatively changes anything. i don't see why that should involve a state change
16:31 mortenmj er, floor x being requested
16:31 mortenmj (from inside or outside)
16:32 rue_mohr it could change the floor its gonna stop on next
16:32 mortenmj so? when we pass a floor we can just check if we're supposed to stop here
16:33 rue_mohr yes
16:33 mortenmj so why encode that information in a state, when it can just be a variable?
16:34 rue_mohr there are several levels at which you can implement this as state machine(s)
16:35 mortenmj which do you suggest?
16:35 rue_mohr I can do the whole thing as one large state machine (I think..) it could be broken down into a few state machines, or you can have code manage a few small state machines
16:35 mortenmj not everything needs to be part of the state machine, though
16:35 rue_mohr definitly not hte obstruction
16:36 mortenmj for instance, when someone selects a floor from inside the cabin, i think we should just put that information in a register (i.e. set a bit high in an int), and when we pass say the third floor we check if that bit is high, meaning we should stop
16:36 mortenmj there's no point in a "we should stop at the third floor" state
16:37 mortenmj am i misunderstanding you? it sounds like you want to do this with hundreds of states
16:38 rue_mohr I'm comparing how this would be done in one big state machine, vs coding it straight, vs making it a hybrid system
16:39 rue_mohr I have a program that would build the states based on rules
16:39 rue_mohr nomatter what we do, we need the rules to be defined
16:39 any32704280 and if the elevator is moving at 25mph, and instant stop as it passes a floor to stop at, if fine, the passengers will get accustomed to being throw against the ceiling
16:40 mortenmj any32704280: the floor sensor trips far enough in advance that we can stop gently
16:40 rue_mohr mortenmj, is your objective to use a state machine or code the operation in C?
16:41 mortenmj i have to use a state machine, but my objective is to make this work
16:41 rue_mohr I want to make sure I dont miss your goal
16:41 mortenmj not using a state machine would be incredibly messy
16:41 mortenmj but using a memoryless state machine means using 500 states
16:41 mortenmj neither is acceptable
16:42 rue_mohr why dont you like 512 states? (just asking)
16:42 mortenmj does that really need explaining?
16:42 rue_mohr maybe it dosn't intimmidate me cause I ahve a program to build the tables
16:42 mortenmj i'm not coding 500 states, and doing so would show that i have so fundamentally misunderstood how control systems work that i would probably fail the assignment
16:43 rue_mohr mortenmj, the states would be coded into an integer array
16:43 rue_mohr unsigned char states[512];
16:43 mortenmj are you pulling my leg? seriously?
16:43 rue_mohr I could do it, I know its not what you want tho
16:44 mortenmj listen to yourself
16:44 mortenmj a single elevator, four floors, a couple of buttons
16:44 rue_mohr and for more than 2 floors the table would get quite cumbersome
16:44 mortenmj and 512 states?!
16:44 mortenmj exactly. we're not even at 4 floors. this is for two!
16:44 rue_mohr yup :)
16:44 mortenmj so we're talking 2048 states
16:44 rue_mohr I just want to start working out the rules for operation from the inputs
16:44 mortenmj you sir, must have been drinking
16:45 rue_mohr my program can build all the states from a set of rules
16:45 mortenmj and it would output an unmaintainable mess
16:45 rue_mohr not if you edit it at a rule level
16:45 mortenmj ok. how many states are you suggesting we'd end up with at the end?
16:46 rue_mohr ok, lets think, we have our inputs defined, we need rules to handle events on them
16:46 rue_mohr the rules are the important part now
16:46 mortenmj no. before i listen to you any more, i want to know what you consider a reasonable number of states in the finished code
16:47 rue_mohr if the states are code in switch statements, the maximum reasonable limit is about 16 states
16:47 rue_mohr 20 if you want to push it
16:47 mortenmj all right, then we're on the same page
16:47 rue_mohr :)
16:47 mortenmj you scared me, dude
16:47 mortenmj 512 states
16:47 mortenmj jesus
16:47 rue_mohr I would never suggest making a switch statement that large
16:48 mortenmj even a lookup table that large is absurd
16:48 mortenmj okay, so let's look at these rules. what do you have in mind?
16:49 rue_mohr did they ask that when idle the elevator wait at a specific floor?
16:49 mortenmj no
16:50 mortenmj but it makes sense
16:50 mortenmj it's the sort of thing you probably want to think about if you want an A
16:50 rue_mohr yes and no, I'm trying to think if its easier or not
16:51 any32704280 depends on the time of day, and which weekday
16:51 mortenmj we're not doing anything *that* advanced
16:51 mortenmj it either goes to some preset floor after a certain idle time, or it doesn't, but no change depending on time or date
16:52 any32704280 at 6am on Monday, all idle elevatorsin an office building should be on the bottom floor
16:52 rue_mohr ok so, I think we need a variable to say if were currently servicing up or down requests
16:52 mortenmj agreed
16:52 any32704280 at 3pm on Monday, idle cars should be where everyone wants to get on to leave work
16:53 rue_mohr as the elevator is going up, it will stop at all floors requestsing upness, and floors specifically requested
16:53 mortenmj agreed
16:53 rue_mohr as the elevator is going down, it will stop at all floors requestsing downness, and floors specifically requested
16:53 mortenmj agreed
16:53 any32704280 uless the car already is overweight
16:54 mortenmj it never is
16:54 any32704280 o
16:54 any32704280 i neen elevators fail from overwight
16:54 any32704280 seen
16:54 mortenmj not this one
16:54 any32704280 ok
16:54 mortenmj it's a model, any32704280. don't overcomplicate it
16:55 rue_mohr any32704280, for this elevator, people always stand in the lobby and never get ont eh elevator
16:55 rue_mohr unless to peek in and push the floor they want to go to
16:55 any32704280 ok
16:55 mortenmj you can think of overweight as part of the obstruction sensor. it just stops until it goes low
16:55 rue_mohr mortenmj, I'll be here if you want to take a 10 hour rest
16:55 mortenmj i'm good for an hour or two
16:56 any32704280 had a situation once that elevators that looked fine kept overspeeding going down, one even sheared off a key in a shaft coupler trying to go up, turn out it was being over-weighted
16:57 mortenmj rue_mohr: so where do we go from here?
16:57 rue_mohr just working on a few test-case initial scenarios
16:58 rue_mohr - the elevator door is closed, its on a floor
16:58 rue_mohr - nobody is in the elevator
16:58 rue_mohr - nothing is requested anywhere
16:58 rue_mohr meaning that the first event will be someone pushing a up/down request button
16:59 rue_mohr the button needs to stop the elevator when it gets to that floor, for the requested direction
17:00 rue_mohr :) its a lot more going on at once than my normal state machines, I'm trying to work out where to break this up
17:01 rue_mohr I can see this fragment:
17:01 mortenmj i don't think that's a complicated scenario. we're in the idle state, get a request for a floor above us, go to the moving_up state, as we move up we check our register with request info whenever we pass a floor
17:02 rue_mohr stop lift motor, open door, wait, close door
17:02 mortenmj we pass floor #x, see that there's a request to go up on this floor (and we're in the moving_up state, so it's applicable), and it makes us go to the halted_moving_up state or something
17:02 rue_mohr if there is no floor requested, nothing else is done
17:02 any32704280 "not whenever you pass a floor", by then it's too late, you check as you pass the previous floor
17:03 any32704280 you must allow decel time and distance
17:03 mortenmj all right, so we check as we pass the floor below. same principle
17:03 rue_mohr kat, easy, its just an accademical elevator
17:03 mortenmj though in this case we don't have to
17:04 mortenmj on a real elevator in a high-rise building, moving at 60mph, you might wanna check five floors below
17:04 mortenmj it's still the same principle
17:04 rue_mohr when you close the door, you have two things to look at, what direction your going in, and what floors are requested
17:05 rue_mohr there are two situations you are idle, one is with a person in the elevator and one isn't
17:06 rue_mohr if someone calls an elevator and gets in, and dosn't request a floor, the elevator sits idle waiting for a selection
17:06 rue_mohr which means the idle can be broken with either an internal or external request
17:06 fckng_stupid or 3 epople are having sex with the E-stop button engaged
17:07 Steffanx ""Univoid, use C, not c++ becoase a microcontoller dosn't have enough memory to store dynamic objects" .. " <== rue_mohr ?!
17:07 rue_mohr not under the std coding habbits of most Steffanx
17:07 mortenmj Steffanx: in the 8 bit world, that's pretty much true
17:07 Steffanx C++ doesn't explicitly mean dynamic objects
17:07 mortenmj why use c++ if you're not writing object oriented code?
17:07 rue_mohr thats like saying use java, but dont object orient your code
17:08 Steffanx Who says it's not 'object orientated'?
17:09 mortenmj Steffanx: you write C++ on 8bit controllers, comercially?
17:09 mortenmj commercially*
17:09 Steffanx No, but I see people do it
17:09 rue_mohr ok, so, from idle Steffanx same reason you dont use malloc on an 8 bit micro
17:09 mortenmj sure, when they need one of something
17:09 mortenmj not when they need 1000
17:09 mortenmj or a million
17:09 mortenmj you want to use the smallest µC you can
17:10 mortenmj writing C++ means using a bigger and more expensive µC
17:10 rue_mohr Steffanx, if a C coder gets carried away you can tear up all the microcontrollers code just with the stack
17:10 Steffanx I'm not THAT into C++ on a uC, but i'm trying to do it for my current project
17:11 rue_mohr just dont create/destroy objects all the time and you will be ok
17:11 Steffanx Indeed
17:11 mortenmj if a µC is being programmed in C++ chances are good it's got a full fledged RTOS and all that jazz
17:11 rue_mohr though I thknk that each object in C++ has a function pointer list that has to be in ram with the objects variables
17:11 mortenmj for a small 1mhz 8bitter it's C all the way
17:12 rue_mohr Steffanx, I'd be interested if you can prove me right/wrong on that
17:12 Steffanx I can't, yet :P
17:13 rue_mohr mortenmj, so, out of idle is either a specific floor request from the inside of the elevator or a up/down request from a lobby
17:13 Steffanx Some claim the C++ compiler sometimes even produces more efficient code though
17:13 mortenmj rue_mohr: agreed
17:13 mortenmj Steffanx: «some claim»
17:13 Steffanx Yeah :P
17:14 Steffanx I'll ask if they have an example :P
18:11 rue_mohr kat, your sulking again
18:11 rue_mohr your a welder, welders shouldn't sulk
18:19 Steffanx Pong received fckng_stupid ?
18:27 fckng_stupid rue, it's highly likely i would be pre-packing to go backto Alabaforkingbama if not for this sinus headache
18:28 rue_mohr :/
18:29 fckng_stupid cost for the fiasco so far: ~$10k ($5k truck, $2k repairs, $1.5k gas/diesel, $1.5k etc)
18:30 fckng_stupid not counting the cost of the realestate
18:31 rue_mohr are you sure its a lost cause?
18:31 rue_mohr he wont give you anything?
18:32 fckng_stupid in a round about way, in one email, he said he sees no point to writing up a contract if i am threatening to go back to Alabama without a contract
18:32 fckng_stupid how's that for self-fulfilling ststement?
18:34 rue_mohr it sounds like he cant understand why you dont want to live there...
18:35 fckng_stupid that's good, because I WANT TO LIVE HERE
18:35 fckng_stupid but under better conditions than in Alafusckingbama
18:36 fckng_stupid instead of me going toa dentist for a cavity, i had to take a cat to the vet and buy it medicine, it came with the property, and i don't want any pets here, i was forced
18:37 rue_mohr but if he dosn't understand that you want to be there then he has no motication to help you stay
18:37 fckng_stupid "you don't take care of the cats, you get no barn"
18:37 fckng_stupid so i did
18:38 fckng_stupid then it was "no electricity to the barn", and i said it was an imperitive i have electricity to a barn, else it was only a dark storage tunnel
18:38 rue_mohr I dont like the way this person is playing you
18:38 rue_mohr }:|
18:39 fckng_stupid he says "you only WANT power to the barn, you don't NEED it", to which i reply "so i'll crank up the two drill presses with real hand cranks??"
18:39 fckng_stupid and in the dark,, so he says "use solar panels or a generator",, and it's only 110ft to the service entrance pole he won't let me run power from
18:40 rue_mohr and hows your welder supposed to work? he gonna pedal a bike hooked to a genorator?
18:40 fckng_stupid i dunno
18:40 kng_stupid s
18:41 rue_mohr it seems to me that he thinks the barn is for storage
18:41 fckng_stupid i so like this place, it's a better place to live than Alafusckingbama, but he's making up rules i cannot live under
18:42 fckng_stupid i told him early 2011, i cannot pay rent till the place in Alafarkingbama sells, so yesterday he said i start paying rent essentially next month
18:42 fckng_stupid with no rent/lease/sale contract in writing yet
18:43 fckng_stupid i told him a neighbor wanted all the materials from the shed demolition, i said he could have all i didn't use (which would be only one 5gal bucket full, or less), and Harvey went apeshit on me
18:45 fckng_stupid small pieces of roof tin so rusty you can see thru it, bent rusty nails, that sorta thing, and he got all over my ass
18:46 fckng_stupid "it's mine, you cannot give it to anyone, i say no way, you cannot do that, it's all mine!"
18:46 fckng_stupid shit
18:48 fckng_stupid he went on and on
18:51 rue_mohr does he hate that neighbour?
18:52 fckng_stupid yeas
18:52 rue_mohr ah well there
18:52 fckng_stupid yeas, cannot give him a few handfulls of rusty 30 yr old nails!
19:03 fckng_stupid many of the nails were olde lead-head nails, and i was saving the lead !
19:04 fckng_stupid i dunno how anything i would have given the neighbor was going to be beneficial to him
19:40 fckng_stupid .........
20:24 fckng_stupid ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
20:24 fckng_stupid ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
20:25 fckng_stupid !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
20:25 fckng_stupid ¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i¡i
20:33 e_mohr pets the cat on kats keyb
22:11 rue_shop hmm soldering more of my z80 motherboard togethor
22:11 rue_shop just wondering what isa cards I should use first on it, I'm thinking a serial card
22:11 rue_shop haha I dont have -12V onboard....
22:13 rue_shop I would do a vga card, but I'm not sure how to initialize text mode
22:48 fckng_stupid news flash on abcnews: cure for homelessness: provide a home
23:04 pigpenguin abc never ceases to amaze
23:05 rue_shop so the control baords I have are either 8080 or 8048 based (mcs80 and mcs48)
23:05 rue_shop neither of which there are C compilers for
23:06 rue_shop I dont feel like putting enough time into them to do anything complex
23:06 rue_shop there should be mcs80 targeted C compilers tho
23:06 rue_shop I camn there is for the z80
23:07 rue_shop /mean/
23:20 rue_shop tho I'm getting a pretty good pile of them, it might be worth some investment
23:25 fckng_stupid of Z80's ?
23:26 rue_shop no I have lots of z80's
23:26 rue_shop I'v got a growing pile of 8085 and 8035 boards
23:27 fckng_stupid i thought you are an avr guy
23:27 rue_shop I'm also a guy who wants to use up stuff
23:28 kng_stupid
23:31 rue_shop size:address-lines 16k:11 32k:12 64k:13 128k:14 256k:15 512k:16 1M:17 2M:18
23:31 rue_shop I think the largest 8 bit eeprom I have is 2M
23:32 fckng_stupid which is pretty big
23:32 rue_shop but my software is only set up for making state machine images to 512k
23:32 rue_shop (bits)
23:32 fckng_stupid so cram 8 of them into it
23:33 rue_shop it erks me to think that about ever week a pound of usable eeproms is thrown away at just 1 e-recycler
23:33 fckng_stupid irks
23:34 rue_shop I went in once, and pulled eeproms, got tonnes of them
23:34 rue_shop havn't been abel to use them up yet
23:34 rue_shop I dont know for how long they will be available in dip
23:37 fckng_stupid sadly, even if you had 1000's of them, tested, working, cleaned, you'd make zip selling them in batches on ebay
23:37 fckng_stupid many of my fav sellers on ebay last yr are now gone, and i dunno where to
23:37 rue_shop a 128k rom and a 74374 can make a 7 bit pwm genorator, the 8th bit can be used for motor direction
23:38 rue_shop my 128k eprom drawr is overflowing
23:41 rue_shop I have a drar of 74164 I can use to make them serial devices
23:42 fckng_stupid or use your trick with octallatches
23:42 rue_shop 164 is smaller
23:43 fckng_stupid but can't be preloaded
23:43 rue_shop preloaded
23:43 rue_shop ?
23:44 fckng_stupid the latch has 8-bit parallel in and 8-bit parallel out
23:44 fckng_stupid and can stillbe serial-in and serial-out
23:44 fckng_stupid it's after midnite, my brain is more off
23:45 rue_shop your right, but this would only need to be an 8 bit output
23:46 rue_shop gee the machine for that pwm would be easy
23:46 rue_shop 1Mhz source would make a fine pwm rate too
23:46 fckng_stupid or use cmos for low power
23:47 rue_shop :) my projects aren't worried about +- a few watts
23:47 rue_shop today, in the robots class, we accidently melted a stepper
23:47 rue_shop seems I didn't notice the students software left all the coils of one of the motors on
23:48 rue_shop it was too hot to come close to touching
23:48 fckng_stupid ouch
23:48 rue_shop I turned the shaft and I felt the liquid stator in it
23:49 rue_shop *oops*
23:49 fckng_stupid yeas