Show Posts
Pages: 1 2 [3] 4 5 ... 10
31  Using Arduino / Motors, Mechanics, and Power / Re: Actuators on: July 31, 2013, 02:38:43 am
For simple forward/reverse control without PWM speed control one can wire two SPDT relays as an H bridge.  That arrangement will also short the motor terminals when both relays are OFF or both are ON, so it will brake the actuator motor improving static load handling.  If you don't want the braking you can use an SPST to turn power on and off and a DPDT to reverse direction.  You would need a driver transistor (or MOSFET) between the Arduino and the relays.
Ciao,
Lenny
32  Using Arduino / General Electronics / Re: Where to order parts? on: July 26, 2013, 05:05:40 pm
The same sort of "surprise" can happen with the RS/Allied pairing.  An order to RS.it that ships from RS.uk has no surcharge, and not much delay, but it can get pretty pricey and slow to boot if it has to come from Allied (U.S.),
Ciao,
Lenny
33  Using Arduino / Motors, Mechanics, and Power / Re: Direct Drive Brushless and Gearless Motor for Power Wheelchair on: July 26, 2013, 05:03:28 pm
Jackrae's numbers would be for a rather atypical chair.  More common would be 14" diameter tires (35.6cm) and 10 km/hr top speed, which works out to 150 RPM.  Otherwise, however, he's really giving you good advice.

Invacare had the corporate funds to build a gearless-brushless motor.  The first generation was efficient, heavy and unreliable.  The second generation was efficient, even heavier, and somewhat more reliable.  The cost was enormous.  Note too that not only do you lack torque multiplication of gearing for the motor, but the brake doesn't have that multiplier either.  The brake becomes large, heavy, current demanding (bye bye some of that efficiency) and, from many complaints, annoyingly noisy.  Invacare even had an "in house" controller manufacturer - Dynamic - to design a controller for those motors, and they still had a product that didn't exactly set the world on fire (except in their ad hype).

If you search, you should be able to find some pretty hefty, industrial quality, brushless motors with integral gearing that keeps them pretty compact.  The largest even have forced cooling.  They are not, however, cheap and finding controllers for brushless motors with adequate current capacity (say at least 100 Amps per motor) will not be easy, nor cheap.

Gearcase design is "mature" engineering.  If one doesn't cut corners, one can get something that will outlast the motor and, though not 100% efficient, can be as much as 90% efficient.  If a pair of gearless motors adds 20kg to the weight of the chair, and its brakes draw 5 Amps instead of <1 Amp (as do those on geared motors), that extra bit of efficiency is being used to push more weight up hill and as waste heat in the brake solenoids.  No other manufacturer has ever followed Invacare's lead and I don't think that this is entirely ascribable to poor engineering (though there's plenty of that about too).

Ciao,
Lenny
34  Using Arduino / Motors, Mechanics, and Power / Re: Stalling the motor... on: July 26, 2013, 10:50:33 am
Mr. Bear sounds like he is on the right track in using motor current as a feedback signal to get constant torque.  Just have to impose a maximum current limit to ensure that you can not exceed the maximum continuous dissipation of the motor; very often that limit is imposed by brush heating, but the motor manufacturer should specify a Watt rating which is based on heat load (generally, this is mechanical power produced, not power consumed, and efficiency is always well less than 100% so power consumed is much greater).  If the manufacturer supplies characteristic curves for the motors, you can see what current gives that Watt output (and calculate Watts input, efficiency etc.).  If you stay below that, using a controller that can have a current limit set, the motor should not overheat.

If you'd like to see a pretty clear description of torque-mode control, you can go to the Roboteq web site and download the user manual for their NextGen controllers.

Ciao,
Lenny
35  Using Arduino / Motors, Mechanics, and Power / Re: Direct Drive Brushless and Gearless Motor for Power Wheelchair on: July 25, 2013, 12:04:20 pm
The motor you linked to is a GEARED motor; the gearcase is within the hub rather than being external.
Ciao,
Lenny
36  Using Arduino / General Electronics / Re: 12 volt 30 amp automotive relay on: July 21, 2013, 03:35:21 am
I have attached two app notes from Tyco that I think are worth a read.  For high-current DC applications, a diode across the coil will protect your input device BUT can seriously compromise contact life.  Better a pair of diodes (one normal, one Zener), or even a resistor, so that kickback is snubbed, but doesn't fall so quickly that the contacts can't snap open and break the spark.  Ciao, Lenny
37  Using Arduino / Displays / Re: advice needed for chosing a display for an embedded project on: July 17, 2013, 04:35:44 pm
Thanks.  I saw your form post about this project earlier today, but had seen nothing there or on Sainsmart's pages that said that this screen is daylight readable.  BTW, I think you're missing one digit in the controller chip name.
Ciao,
Lenny
38  Using Arduino / Displays / advice needed for chosing a display for an embedded project on: July 17, 2013, 09:21:34 am
For a multi-node CANbus project described elsewhere in the forum I will be needing a small graphic display and I'm having trouble choosing one.  The requirements are these:

size: about 2" diagonal; no less than 1.8" nor more than app. 2.7"
interface: serial (SPI or other)
resolution: at least 128 x 160, but higher resolution preferable
color preferred but monochrome would be OK
highest contrast possible
DAYLIGHT (or at least "outdoors") READABLE! (bright sun readable would be nice, but I'm unlikely to get that).

In some ways an e-paper screen would be ideal, but the memory requirement pretty much rules that out.  I have wondered whether one couldn't use an SPI FRAM chip to get a dynamic-enough refresh, but no one is producing an e-paper board with FRAM on board and I don't think I want to tackle another development project at the moment.  There is a line of e-paper boards that have their own graphics MCU, but using those would mean dealing with a third programming environment (I already have to contend with Arduino's C++ and Roboteq's Roborun IDE and MicroBasic).

So leaving aside e-paper for the moment, what would you suggest for a small daylight-readable, serial-interface graphics display?

Ciao,
Lenny
39  Using Arduino / Project Guidance / Re: Charging 24 Volt lead acid batteries on: July 17, 2013, 02:30:26 am
The third pin in a wheelchair charger connector is a "drive inhibit" connection.  At the charger plug it is actually just connected to the B- lead.  Inside the wheelchair controller, if that pin is equal to B- rather than floating, the chair can't be driven - keeps you from tearing the charger and wall along with you.  For just charging your series pairs of batteries (yes, the WC charger is 24V), you just use two of the pins B+ and B-.  If the two B- pins have the same size wires connected to them (or are just connected to each other - open the plug and take a look), it doesn't matter which one you use for charging.  If one pin has a heavier wire or more direct connection, that's the one to use as minus.  BTW, these XLR plugs, though often rated at up to 12 Amps, generally shouldn't be used at over 8 and will get warm doing even that.

Ciao,
Lenny
40  Using Arduino / Project Guidance / Re: Multi-node CAN bus: a progress report on: July 15, 2013, 03:02:46 pm
Rob,
I've taken a look at several crosspoint switch data sheets.  Impressive devices, but they won't do what I need.  In general, the analog outputs can't go outside Vdd, but, of more importance, as all switches have one side in common they are either all "positive" or all "negative".  With the 4066, for any given input signal I have 3 analog switches that are completely independent with two leads each just like on physical switches.  They are all bipolar for analog voltages <= Vdd, but need to be treated as polarized, or have a current limiting resistor, if the analog signal is > Vdd.  Five 4066-type chips are also a lot cheaper than 1 crosspoint switch and don't require an MCU, though an MCU on the input lines (in place of the 4049) could be used to add some flexibility if really wanted.  In summary, bulkier, but I think more robust for my purposes.
Ciao,
Lenny
41  Using Arduino / Project Guidance / Re: Multi-node CAN bus: a progress report on: July 15, 2013, 08:54:43 am
An aside, but perhaps useful information for anyone contemplating using mini phone jacks in a vibration/shock environment like that of a wheelchair.  Most of the jacks on the market use bent flat metal strips as both contact and spring.  They lose contact integrity after a short while.  Switchcraft (perhaps others as well, I just don't know) makes a line with coil springs and hinged contacts.  Pricey, but they last years and years.
Ciao,
Lenny
42  Using Arduino / Project Guidance / Re: Multi-node CAN bus: a progress report on: July 15, 2013, 08:52:05 am
Thanks Rob.  I'll take a look at them, especially the CD22M3494 as I could power that one from 5V if the output characteristics are what I want.  Ciao, Lenny
43  Using Arduino / Project Guidance / Re: Multi-node CAN bus: a progress report on: July 15, 2013, 06:23:57 am
Rob,

A crosspoint switch or another (non-matrix) analog mux (or is it a demux) would certainly reduce package count, and could handle both polarities, but I haven't come across any that are also as voltage-tolerant as the simple analog switch.  Although one has to pay attention to polarity when switching >Vdd, the 4066 can connect without level-shifting to 3.3V or 5V logic, an audio line with a DC component, or a low-current 12V supply to a small amplifier.  Do you know of any devices that package ca. 20 switches that have that kind of tolerance?
Ciao,
Lenny
44  Using Arduino / Project Guidance / Re: Multi-node CAN bus: a progress report on: July 15, 2013, 04:39:29 am
Bernt,
Maybe details, but I think that they're important ones.
Quote
Why do you use 10 uF electrolytic capacitors and not ceramic multilayer versions ?
Ignorance and age (mine).  I was not even aware that uF range ceramics had become affordable; I'm still working upfrom a vacuum-tube era knowledge base.  The data sheets for these are pretty thin, but there's a pretty comprehensive Wikipedia (http://en.wikipedia.org/wiki/Ceramic_capacitor).  I will make this change, even for the Al can input capacitor on the DC converter boards.
Quote
The optional diode D3 on the switch multiplexer, isn't it put it the reverse direction ?
Thank you - that was a just plain goof and I've already fixed the drawings.
Quote
I don't fully understand what the multiplexer board does,
This design was a quick translation to 5V SMD from the 12V hand-wired board that's been on Rachi's chair for the last 13 years.  It gives 3 sets of outputs from one group of 5 input switches (more below).
Quote
does the relay switch inductive loads ? If so, the free wheeling diode is missing in the output.
No, the load is an SSR to switch 220V AC loads such as from a kitchen mixer.  However, I see no reason to not add a kickback diode in case something else ever gets plugged in there.
Quote
All the logic of the multiplexer board, couldn't it be advantageously replaced by a CPLD or even a micro-controller ?
Yes, it could, but there was a reason for cho0sing the 4066 when I made the first one of these 20+ years ago and I think it's still valid.  One can control a wide range of external circuits to the output of these switches without worries about polarity, or whether you need to switch DC or AC.  (There is, unfortunately, a limit to this as polarity can become important if the voltage on the controlled line exceeds Vdd on the 4066.)  For something that is essentially a patch board with lots of 3.5mm jacks, I think that this is a useful safety and flexibility factor.  As presently used, and as will be used in the new system, one output set goes to the CANbus WC controller (presently a Dynamic DX controller), one output set goes to a board stolen from a cheap USB keyboard for input to Rachi's PC, and just two outputs of the third set are used to flip the latching relay or connected directly to the external SSR when latching isn't wanted.  Before major mechanical improvements to the chair, the last two unused 4066 gates also controlled an optical-sensing steering correction servo, that is no longer needed as we have powerful-enough motors that simple IR motor compensation works the way it should instead of running out of torque to overcome the mechanical hysteresis of casters displaced after a turn.  On her original chair, about 25 years ago, that had a single-board analog controller, the chair-driving set of outputs selected voltage dividers to mimic an analog joystick (and, in that case, were handling both positive and negative DC signals).  The physical size of the box is actually fixed by needing to mount 15 mini phone jacks, not by the size of the board.  A programmable multiplexer would be nice, but not at the cost of giving up the flexibility of connecting different output types (and protection from someone, most likely me, plugging in something that's incompatible).
Quote
The diode has no direction mark on the silk screen.
Actually, none of the diodes, on this board or the others, have polarity marked on the silkscreen, and adding that to the DesignSpark footprints is a very good idea.  It's even worse than that on the multiplexer board as the PCB footprint came from an old library and is 0805 but should be DO-214.

Ooops. I have to go pick up my daughter and I'd lost track of time.  Be back later.
Ciao,
Lenny
45  Using Arduino / Project Guidance / Re: Multi-node CAN bus: a progress report on: July 14, 2013, 11:36:33 am
Having returned a week ago from a wonderful week of vacation in the mountains and by the sea in Abruzzo, I thought it well to tie up some loose ends in this project and to post the current program and circuit files. They are attached below. I won't bore you with all of the changes, but I have tried to keep a "change log" of the programming changes/additions in comments at the end of the Arduino files. I think that this is now close to a final version for 3 of the 4 nodes needed, except for adding CAN messaging to the fourth node (the display) that I've not yet started on. The circuitry should also be close to a "production" version, except for the high-current stuff for lights, seat actuators and so on. Major changes are: (1) single button control of power to all of the nodes (including the Roboteq), (2) fault handling for four levels of criticality (is that a word?), (3) multi-level speed inhibition triggered by actuator position and/or shock(stability) sensors, (4) reading and responding to Roboteq fault and status flags. There were also a lot of detail changes to improve (I hope) readability of the code and CAN network and power management. The circuit files include both pdf and DesignSpark versions.

The next big chunk to work on is a display node. Because Rachi's set-up will have both switch driving and attendant joystick, and I'm keeping track of both voltage and amp-hours used, there's a fair amount of information to display and a small screen (about 2" diagonal) can't be avoided. I've explored the notion of using an e-paper screen because of its daylight readability, but it's probably not practical yet so I'll most likely be using a TFT screen which will, unfortunately, probably be unreadable in sunny (at the moment) Siena. The problem with e-paper is that one can't re-write just a portion of the screen as information changes -- you have to un-do everything that's there and re-write every pixel on the screen at each update. That requires a lot more memory than is in the processors I'm using, and using something like an SD card for this would be far, far too slow. There are some reasonably priced e-paper boards that have their own 32-bit processors with lots of RAM, but that would mean having yet a third programming environment (on top of Arduino's C++ and Roboteq's Roborun+MicroBASIC) and I'm not willing to do that. If anyone has a suggestion about small, serial-interface (SPI or other) graphics boards, monochrome or color, that are good in strong daylight, I'd love to hear it. Or if anyone can suggest a solution for dealing with e-paper from an 8-bit MCU (for example, an SPI FRAM chip breakout board) I'd like to hear of that as well.

Ciao,
Lenny
Pages: 1 2 [3] 4 5 ... 10