Arduino controlled wheelchair

Power wheelchair board for REAL info!

POWERCHAIR MENU! www.wheelchairdriver.com/powerchair-stuff.htm

Re: Arduino controlled wheelchair

Postby LadyJ » 07 Feb 2019, 16:05

LROBBINS wrote:I hate to contradict you, but Remote Joystick Module IS THE SAME AS Master Remote (except in systems that, for example, used the now-discontinued, Specialty Controls Module as Master Remote). Moreover, not all of the joystick modules use analog-output joysticks - the Shark uses a an SPI interface joystick. For the DX systems, you can use simple voltage divider circuitry to mimic the joystick, for the Shark you cannot. Woody's RC adapter (for P&G) which uses a digipot to could easily be adapted to the DX, but not to the Shark. Nor are the bus protocols nor the bus messages the same across all systems. The DX and DX2 use a CAN variant, the Shark uses a quite different serial protocol.


I'm aware that the bus and protocols are different, which is why I suggested we should interface with an RJM, which supports an analog connection. I'm basing a lot of this on Kelly's published papers, and some other research I've done into how ADT works w/ the various dynamic systems. As @gcebiker mentioned the touchpad is digital, which is why Kelly used the ADuC841 to generate the analog voltages.

D. Microprocessor selection for processing
There are several requirements for the host microprocessor system. In order to implement the analogue signals for the RIM the microprocessor must have some hardware means of generating analogue voltages. There must be enough code storage memory to implement the firmware for the AD7147. an 12C communication routine, debugging code and generation of the analogue voltages. The ADuC841 has the sufficient capacity to implement all these tasks. The dual on board 12 bit DAC’s are set to 8 bit mode and are used to generate the voltage output. They are connected internally to the power rail of the system allowing a full voltage swing of 0— 5V.


E. RJM Module Specifications and use.
The RJM allows any dual decode joystick to be connected directly to its input pins. The dual decode specification is outlined in table 2. The RJM also provides access to the DX Bus and the wheelchairs power supply providing up to 200mA regulated current. This provides sufficient power to run the microprocessor and the AD7147. Most wheelchairs come with several profiles programmed into the master joystick; this allows the user to change driving parameters for different surroundings. The RJM requires SIX control signals, power, ground, speed and direction, and speed and direction mirrors, but will operate without the mirrors. The RJM has two pins which when toggled with a high pulse of 100ms duration increments or decrements the drive profile. ‘These pins are used with the AD7147 tap output status. When a valid tap 1s detected on the lower/upper half of the touch pad we toggle the decrement/increment pins. Pull up resistors arc used on the connections so that when the joystick power is recycled the pulse created does not increment or decrement the drive profile.
The output of the DAC’s are buffered through op-amps and connected to a resistor network before connection to the RIM. The resistor network reduces the current input to the RIM and reduces the gain of the inputs. This is to keep the output range of a dual decode joystick between .5 and 4.5 volts.
~
Lady J

Golden Compass Sport GP605 w/ custom seating.
Custom manual chair
LadyJ
 
Posts: 12
Joined: 26 Apr 2018, 13:50
Location: Indiana, United States

Re: Arduino controlled wheelchair

Postby LadyJ » 07 Feb 2019, 16:20

Remote Joystick Module IS THE SAME AS Master Remote


Not according to dynamic? At least for DX & DX2 based systems. The biggest difference is the UCM/UCM II module which in the "master" joystick.

RJM topology.png


DX2 (UCM II) RJM topology.png
~
Lady J

Golden Compass Sport GP605 w/ custom seating.
Custom manual chair
LadyJ
 
Posts: 12
Joined: 26 Apr 2018, 13:50
Location: Indiana, United States

Re: Arduino controlled wheelchair

Postby LROBBINS » 07 Feb 2019, 17:52

Sorry LadyJ, you are quite right about the RJM - it is not a master remote, but is similar to the ACU. The ACU does indeed contain an analog joystick pot, though it's output is translated into DX bus messages (at least for the DX-ACU, there is also a Shark ACU that I assume, but don't know for sure, translates the analog to RS482??? messages). Yes, one can open up an ACU (and I presume an RJM) and substitute any voltage divider device for it and in that way get it to communicate with the bus, as Woody has done for the P&G joysticks. I had in fact done this years ago on an Everard Bobcat (a.k.a. Invacare Turbo) that, in the pre Dynamic days, had the same inductive joystick pot and a single-board strictly analog computer. Head and foot switches selected various voltage dividers via a matrix of 4066 chips. I suspect that it would take Woody all of five minutes to figure out how to hook his digipot interface to the analog joystick pot in the RJM, ACU or any DX or DX2 master remote (but not the Shark as it has an SPI pot - but it really wouldn't be a horrid task to reverse-engineer the SPI interface). BTW, the specialty joysticks can be pretty expensive - the last ACU that Continental Airlines bought from an Italian retailer to repair the damage they'd done to Rachi's chair cost them nearly E1000.

For something like a touch switch interface, however, with the DX/DX2 there's an even simpler approach. Some master remotes already have multiple switch inputs, and for those that don't, they offer a small 4-switch interface box that translates switch inputs to DXbus outputs. That was the way it was done on Rachi's later DX Bobcat.

Now, I do, of course, have my own prejudicial view about designing such systems. Rather than being tied to the cost and other limitations of someone else's system, I designed my own CANbus system (detailed in other threads here) using the Roboteq motor controller. The open-source software and hardware of this system allows one to include any kind of interface, and any number of additional modules one might desire with a minimum of code writing.
LROBBINS
 
Posts: 5553
Joined: 27 Aug 2010, 09:36
Location: Siena, Italy

Re: Arduino controlled wheelchair

Postby woodygb » 09 Feb 2019, 12:28

This came about due to a request that I received.

It's a bit of lash up ..but here is a video of my attempt at a line follower .

4 of I.R. sensors ..2 at the front and 2 at the rear.

Wheelchair controlled via Bluetooth & Android tablet.

There are 6 buttons on the tablet ...5 of which are used.

ON/OFF

Fast & Slow ...gives a speed option from HALT to 100% in 25% steps.

Home & Call ... Call the chair to you and send it Home to "park".

There is a Speed display in the bottom left hand corner of the Android Tablets screen.




youtu.be/KQy1xbo9tNE
An expert is a person who has made all the mistakes that can be made in a very narrow field.
Niels Bohr
User avatar
woodygb
 
Posts: 7072
Joined: 12 Mar 2011, 18:45
Location: Bedford UK

Re: Arduino controlled wheelchair

Postby AymanJ » 28 Mar 2019, 14:53

Hello Sir,

We are students who are trying to replicate the amazing work you have done with the chair and we got stuck with the following issues:

* We have an offset of approximately 1.2V in the inverted signal in the RS-485 bus coming from the Power Module. Do you have any clue why is this happening?

* When we tried to connect the MAX485 to get RS-232 protocol communication signal, we have noticed that the joystick shuts down and the fault code indicates a communication bus error (Flashing 9 times). We have put 22kohm resistance between A and B at the input of the MAX485 as you described in one of your videos, however, we are still getting the same issue. Note that we are using a DC-DC converter called TSR-2415 to power the MAX485 from using chair batteries.

* Also, in one of your videos, you talked about a switch called DG419, we did not exactly understand why were you using it, and we would like you to elaborate more on that part.

Finally, we highly appreciate any further information you provide.
AymanJ
 
Posts: 13
Joined: 28 Mar 2019, 14:28

Re: Arduino controlled wheelchair

Postby woodygb » 28 Mar 2019, 15:21

An expert is a person who has made all the mistakes that can be made in a very narrow field.
Niels Bohr
User avatar
woodygb
 
Posts: 7072
Joined: 12 Mar 2011, 18:45
Location: Bedford UK

Re: Arduino controlled wheelchair

Postby woodygb » 28 Mar 2019, 15:54

Resistors pic ... Pull ups / down and DG419 start pulse switch.

Image
An expert is a person who has made all the mistakes that can be made in a very narrow field.
Niels Bohr
User avatar
woodygb
 
Posts: 7072
Joined: 12 Mar 2011, 18:45
Location: Bedford UK

Re: Arduino controlled wheelchair

Postby gcebiker » 29 Mar 2019, 01:58

AymanJ wrote:Hello Sir,

We are students who are trying to replicate the amazing work you have done with the chair and we got stuck with the following issues:


Thank you i will do my best to help.

* We have an offset of approximately 1.2V in the inverted signal in the RS-485 bus coming from the Power Module. Do you have any clue why is this happening?


I dont know i never measured it.

* When we tried to connect the MAX485 to get RS-232 protocol communication signal, we have noticed that the joystick shuts down and the fault code indicates a communication bus error (Flashing 9 times).


1. You Must use a MAXIUM chips due the ability to cope with the start up pulse voltages.
2. MAX485 chip produces a RS485 signal, vastly different to a RS232.


We have put 22kohm resistance between A and B at the input of the MAX485 as you described in one of your videos, however, we are still getting the same issue. Note that we are using a DC-DC converter called TSR-2415 to power the MAX485 from using chair batteries.


3. The 22K resistor goes on the output of the Emulator circuit, this is the terminating resistor employed on all circuits of this type, one needs to go on each node if you make two of these boxes, one as the Master and one as a Remote (Attendant Joystick)

4. TSR-2415 are the right regulators, Woody put me on to them, fantastic and efficient units.

* Also, in one of your videos, you talked about a switch called DG419, we did not exactly understand why were you using it, and we would like you to elaborate more on that part.


The Shark protocol requires a start up pulse of the full battery volts, per the notes in my code (attached below).
5. The DG419 switches the MAX485 out of circuit, copes with the full battery pulse initiated by the Arduino - after 300ms, switches full battery volts out of circuit and reconnects the MAX485.

Code: Select all
void sharkStartup () {// my Dynamic Shark start up sequence, other joysticks will have different start up packets.

  //Delay is only used in THIS start up so can stay.

  digitalWrite(dePin, HIGH);        // Hold dePin high when transmitting.
  {
    digitalWrite(dataSwitch, HIGH); // Flip DG419 switch, HIGH = 24v connected to emulator bus
    delay(298);                     // Allow 24v pulse for 300ms +/- 20ms
    digitalWrite(dataSwitch, LOW);  // Flip DG419 switch, LOW = MAX485 connected to emulator bus
    delay(10);
  }


Its best if you can use a Logic Analizer to view the pulse, that way you can see when the reply from the power module fails and why.

Code i am currently using.
- This code has input from users of this forum and attribution is noted within the code.
SR_RC_PCB_Blue_Board_shutdownpacketsinc.zip
No more Limp Mode after power down and immediate power back up.....if you waited 20seconds or so between power cycles, its not a problem anyway but this fixes that bug.
(5.87 KiB) Downloaded 307 times


Board this code works on, they are super cheap !!!!
http://dirtypcbs.com/store/designer/details/11063/5125/nano-shark-hat-v3-23-zip

Emulator section on its own.png
Emulator section on its own.png (140.11 KiB) Viewed 10842 times

Emulator section of the board.



Tony
http://greenmobility.com.au/rc-wheelchair-controller/
My YouTube Ch -- https://www.youtube.com/user/gcebiker
User avatar
gcebiker
 
Posts: 879
Joined: 11 Jul 2015, 14:20
Location: Gold Coast, Queensland, Australia.

Re: Arduino controlled wheelchair

Postby AymanJ » 29 Mar 2019, 08:37

Dear Woody and Tony,
Thanks for taking your time to answer our questions. Since we are working with such wheelchair and RS485 protocol for the first time, we might ask some stupid questions, please bare with us.

"You Must use a MAXIUM chips due the ability to cope with the start up pulse voltages.

We have ordered two different RS485 board: ebay https://www.ebay.com/itm/RS485-TTL-Breadboard-Module-Arduino-Raspberry-Pi-max485-RS-485-Transceiver/232674850469?ssPageName=STRK%3AMEBIDX%3AIT&var=532155608877&_trksid=p2057872.m2749.l2649 and sparkfun https://www.sparkfun.com/products/10124.

Need to confirm whether they use maxim or not. Can you please show any ebay link for maxim based RS485? I will be really thankful if you can explain about the start up pulse voltage. We have checked four wires coming from the controller to the joysticks. Those are +batt, -batt, A and B of RS485 (hope we have identified correctly). Battery terminals giving us constant battery voltage. A &B should give RS485 signal which is half-duplex communication (as per our understanding). We measure the signal switching levels of A&B in digital oscilloscope and we found that these are switching between 0 and 5 voltage.

"The Shark protocol requires a start up pulse of the full battery volts, per the notes in my code (attached below)."
So, you mean in the beginning of communication between controller and joystick, controller send start up pulse in A&B lines which is not 0-5v rather they are full battery voltage and we need to save our MAX485 module from this huge start up pulse?
If that's case, that make sense the use of DG419 analog switch.
" The DG419 switches the MAX485 out of circuit, copes with the full battery pulse initiated by the Arduino - after 300ms, switches full battery volts out of circuit and reconnects the MAX485."

"Its best if you can use a Logic Analizer to view the pulse, that way you can see when the reply from the power module fails and why."
Yes, we have Saleae8 logic analyzer, we tried to check the signal coming out of controller module to joystick by tapping in A&B with respect to battery (-ve). We get something using Async serial communication but with lot of framing error and not quite sure about the proper wiring and set-up of the software of saleae. I was looking hard in the forum to find clear explanation for that.

We have downloaded your code several times however, not in the point yet to use the code. "Board this code works on, they are super cheap !!!! " Yes, we will order some of these board to make a prototype as soon as we understand the whole process and can replicate your components properly.

Thanks
AymanJ
 
Posts: 13
Joined: 28 Mar 2019, 14:28

Re: Arduino controlled wheelchair

Postby woodygb » 29 Mar 2019, 09:24

The Shark protocol requires a start up pulse of the full battery volts, per the notes in my code (attached below)."
So, you mean in the beginning of communication between controller and joystick, controller send start up pulse in A&B lines which is not 0-5v rather they are full battery voltage and we need to save our MAX485 module from this huge start up pulse?


The start up pulse is indeed the FULL battery volts of 24v ish and is only applied to the B line Yellow Shark Bus HIGH wire.

Image
An expert is a person who has made all the mistakes that can be made in a very narrow field.
Niels Bohr
User avatar
woodygb
 
Posts: 7072
Joined: 12 Mar 2011, 18:45
Location: Bedford UK

Re: Arduino controlled wheelchair

Postby woodygb » 29 Mar 2019, 09:38

Note that I use a RS485 - USB Adaptor and software program called Realterm to view the pulse and the code .

Just piggyback it onto the existing wires.


https://www.ebay.com/itm/CH340-USB-To-R ... ctupt=true
An expert is a person who has made all the mistakes that can be made in a very narrow field.
Niels Bohr
User avatar
woodygb
 
Posts: 7072
Joined: 12 Mar 2011, 18:45
Location: Bedford UK

Re: Arduino controlled wheelchair

Postby gcebiker » 29 Mar 2019, 09:57

I think it was 4800 baud with one of the channels inverted. U are using the same LA i used.
I think i posted the screenshot with the settings somewhere in the thread/s
http://greenmobility.com.au/rc-wheelchair-controller/
My YouTube Ch -- https://www.youtube.com/user/gcebiker
User avatar
gcebiker
 
Posts: 879
Joined: 11 Jul 2015, 14:20
Location: Gold Coast, Queensland, Australia.

Re: Arduino controlled wheelchair

Postby gcebiker » 29 Mar 2019, 11:48

AymanJ wrote:Yes, we have Saleae8 logic analyzer, we tried to check the signal coming out of controller module to joystick by tapping in A&B with respect to battery (-ve). We get something using Async serial communication but with lot of framing error and not quite sure about the proper wiring and set-up of the software of saleae. I was looking hard in the forum to find clear explanation for that.


Settings are 38400 baud, Async Serial, one ch inverted (no parity bit)
http://greenmobility.com.au/rc-wheelchair-controller/
My YouTube Ch -- https://www.youtube.com/user/gcebiker
User avatar
gcebiker
 
Posts: 879
Joined: 11 Jul 2015, 14:20
Location: Gold Coast, Queensland, Australia.

Re: Arduino controlled wheelchair

Postby AymanJ » 29 Mar 2019, 15:15

Note that I use a RS485 - USB Adaptor and software program called Realterm to view the pulse and the code .
Just piggyback it onto the existing wires.
https://www.ebay.com/itm/CH340-USB-To-R ... ctupt=true

I have ordered several of these couple of days back. Hopefully will get very soon. Realterm, I believe a terminal emulator like teraterm.
Settings are 38400 baud, Async Serial, one ch inverted (no parity bit)

Can you please share a screen shot of your Saleae logic analyzer?
The start up pulse is indeed the FULL battery volts of 24v ish and is only applied to the B line Yellow Shark Bus HIGH wire

Is the attached file is the correct final schematic of the circuit?
Attachments
Arduino Shark EMU sch v1.9.jpg
AymanJ
 
Posts: 13
Joined: 28 Mar 2019, 14:28

Re: Arduino controlled wheelchair

Postby woodygb » 29 Mar 2019, 19:11

I'll let gcebiker answer that question as it is his drawing.

Here is my version that I believe is correct.
DYNAMIC RS485 MOD2.jpg
An expert is a person who has made all the mistakes that can be made in a very narrow field.
Niels Bohr
User avatar
woodygb
 
Posts: 7072
Joined: 12 Mar 2011, 18:45
Location: Bedford UK

Re: Arduino controlled wheelchair

Postby woodygb » 29 Mar 2019, 22:34

Slightly different pic ...more detail and the 1 Watt 1K power limiting resistor moved.
DYNAMIC RS485 MODZ.jpg



RealTerm: Serial/TCP Terminal

https://sourceforge.net/projects/realterm/

Realterm RS485 code capture..

rs485 dynamic.png
An expert is a person who has made all the mistakes that can be made in a very narrow field.
Niels Bohr
User avatar
woodygb
 
Posts: 7072
Joined: 12 Mar 2011, 18:45
Location: Bedford UK

Re: Arduino controlled wheelchair

Postby gcebiker » 30 Mar 2019, 02:28

Logic Capture of original Joystick
shark bus on capture.png


This is my schematic, you will need to zoom in to see blue traces clearly.
Ver3.25.png


Yes i used the $1 RS485 boards from ebay when i was building it up.
Emulator hard wired.jpg


Video of above build.
I am with out a mic so the sound is low and you will need to turn up the volume.
There are other videos on my ch.
This is a very early build, the logic capture had a ground fault and thats why its not displaying correctly on the screen.

youtu.be/YVvPwSwwGj8

The webpage i had with it all in one place is off line while i am migrating to a new host server.
http://greenmobility.com.au/rc-wheelchair-controller/
My YouTube Ch -- https://www.youtube.com/user/gcebiker
User avatar
gcebiker
 
Posts: 879
Joined: 11 Jul 2015, 14:20
Location: Gold Coast, Queensland, Australia.

Re: Arduino controlled wheelchair

Postby AymanJ » 30 Mar 2019, 12:08

Thanks woody and tony for the prompt response. @Tony, we have seen these videos in the youtube earlier. Thanks for the snapshot.
Slightly different pic ...more detail and the 1 Watt 1K power limiting resistor moved.

I have checked the DG419 datasheet and can see the justification of two signal diodes in (+ve) and (-ve) supply line. But yet not clear why we need this 1K 1Watt resistor. DG419 accepts up to 30v single supply. Moreover, S2 of DG419 connected to battery +ve via 1K resistor is not very clear to us.

SBH is pulled down to 0V by parallel 270 ohm and 22k ohm when D1 is connected to S1. SBH will be at 24*(22k/22k+1k) = 23V when it will connected to S2. Can you please put some light on it? Moreover, how arduino nano will know when to switch between S1 and S2? Is it a time base switch or detect voltage from the bus anyhow (which I can't see in the diagram)?
AymanJ
 
Posts: 13
Joined: 28 Mar 2019, 14:28

Re: Arduino controlled wheelchair

Postby woodygb » 30 Mar 2019, 13:47

The 1k 1 Watt simply limits the current.... a protection device.
https://learn.digilentinc.com/Documents/179

The 1K is on the positive 24v + line & it has no effect on the pull downs... when connected to S1... as these go to GND ...thus the calculation for this will be 22k + 270 ohms in parallel = 266.726 ohms

START is a time based pulse and 23v is more than sufficient for this pulse.

The wakeup signal on the SBH wire shall be asserted for 300ms +/- 20ms. During this time, the SPM is required to power up,
stabilise its operation and latch its power on so that it does not power down again when the wakeup signal is removed. Note
that communication on the Shark Bus is not possible when wakeup signal is present. The wakeup signal transmitter shall be
designed so that it can source 40mA at greater than 12V, under all normal battery conditions (see Hardware Specification), for
the full 300ms.
An expert is a person who has made all the mistakes that can be made in a very narrow field.
Niels Bohr
User avatar
woodygb
 
Posts: 7072
Joined: 12 Mar 2011, 18:45
Location: Bedford UK

Re: Arduino controlled wheelchair

Postby woodygb » 30 Mar 2019, 14:00

The Arduino code given to you has the start up code in it ....you should look at it.

void sharkStartup () {// my Dynamic Shark start up sequence, other joysticks will have different start up packets.

//Delay is only used in THIS start up so can stay.( Delay effects the Arduino's code timing if used in the loop )

digitalWrite(dePin, HIGH); // Hold dePin high when transmitting.
{
digitalWrite(dataSwitch, HIGH); // Flip DG419 switch, HIGH = 24v connected to emulator bus
delay(298); // Allow 24v pulse for 300ms +/- 20ms
digitalWrite(dataSwitch, LOW); // Flip DG419 switch, LOW = MAX485 connected to emulator bus
delay(10);
}


NOTE:- I made a mistake on the Electrolytic capacitor symbol when I drew it ...it should be the other way around.
An expert is a person who has made all the mistakes that can be made in a very narrow field.
Niels Bohr
User avatar
woodygb
 
Posts: 7072
Joined: 12 Mar 2011, 18:45
Location: Bedford UK

Re: Arduino controlled wheelchair

Postby AymanJ » 30 Mar 2019, 21:44

Great, thanks very clear now.
The Arduino code given to you has the start up code in it ....you should look at it.
Sorry, I didn't understand the usage of DG419 earlier and skip the code when Tony posted. I can see now the trick.
I have ordered several Maxim DG419 yesterday and will get back to you as soon as I get them and test the system.
AymanJ
 
Posts: 13
Joined: 28 Mar 2019, 14:28

Re: Arduino controlled wheelchair

Postby AymanJ » 01 Apr 2019, 23:25

Dear Tony & Woody,

Again thanks for your quick replies and detailed answers. We just want to make sure that the settings we are putting for the async series channel is the same as the one you suggested.
async serial settings.png


Also, this is the offset we mentioned to you earlier, but we think that removing the (-ve) of the battery from the channel GND (as you did in your video) made the logic analyzer work since the offset is relative to the (-ve) of the battery. And you can see how it disrupts the digital channel of the logic analyzer from working since the threshold voltage of to distinguish a logic 0 is 0.6V & 1.2V to distinguish a logic 1 according to their website.
offset.png


Thanks again for your help.
AymanJ
 
Posts: 13
Joined: 28 Mar 2019, 14:28

Re: Arduino controlled wheelchair

Postby gcebiker » 02 Apr 2019, 09:11

That first screen shot is the tail end of the Joystick packet, and looks right on ch3, CH0 should be non inverted.

RS485 a differential signal, one 'normal' the other 'inverted', mirror images with the decoder ignoring any packets that don't have identical Normal and Inverted packets.
http://greenmobility.com.au/rc-wheelchair-controller/
My YouTube Ch -- https://www.youtube.com/user/gcebiker
User avatar
gcebiker
 
Posts: 879
Joined: 11 Jul 2015, 14:20
Location: Gold Coast, Queensland, Australia.

Re: Arduino controlled wheelchair

Postby gcebiker » 03 Apr 2019, 17:37

gcebiker wrote:That first screen shot is the tail end of the Joystick packet, and looks right on ch3, CH0 should be non inverted.

RS485 a differential signal, one 'normal' the other 'inverted', mirror images with the decoder ignoring any packets that don't have identical Normal and Inverted packets.


Tried to edit that, capture is 'down on Ch 0' So it looks correct.

Given they are differential, capture on one ch is all that is needed.

This is the documentation for the communications protocol for the SHARK BUS.
Shark Bus Communications version5.pdf
(71.85 KiB) Downloaded 301 times
http://greenmobility.com.au/rc-wheelchair-controller/
My YouTube Ch -- https://www.youtube.com/user/gcebiker
User avatar
gcebiker
 
Posts: 879
Joined: 11 Jul 2015, 14:20
Location: Gold Coast, Queensland, Australia.

Re: Arduino controlled wheelchair

Postby gcebiker » 03 Apr 2019, 17:38

AymanJ wrote:Great, thanks very clear now.
The Arduino code given to you has the start up code in it ....you should look at it.
Sorry, I didn't understand the usage of DG419 earlier and skip the code when Tony posted. I can see now the trick.
I have ordered several Maxim DG419 yesterday and will get back to you as soon as I get them and test the system.


...its not a trick, its the start up protocol required by the SHARK BUS.
What is the point of my using my energy to reply to you if you don't read what i post...ffs
http://greenmobility.com.au/rc-wheelchair-controller/
My YouTube Ch -- https://www.youtube.com/user/gcebiker
User avatar
gcebiker
 
Posts: 879
Joined: 11 Jul 2015, 14:20
Location: Gold Coast, Queensland, Australia.

Re: Arduino controlled wheelchair

Postby AymanJ » 19 May 2019, 20:31

woodygb wrote:Slightly different pic ...more detail and the 1 Watt 1K power limiting resistor moved.
The attachment DYNAMIC RS485 MODZ.jpg is no longer available



RealTerm: Serial/TCP Terminal

https://sourceforge.net/projects/realterm/

Realterm RS485 code capture..

The attachment DYNAMIC RS485 MODZ.jpg is no longer available


Hello again,

Regarding the picture shown where you have the 8 data messages transmitted from the chair to the computer and shown on Realterm, we tried to replicate it, but it seems like we are missing something, can you please have a look at the shown setup for guidance? Thanks for all your help.

Port.png

Display.png
AymanJ
 
Posts: 13
Joined: 28 Mar 2019, 14:28

Re: Arduino controlled wheelchair

Postby woodygb » 19 May 2019, 21:01

Set port to 1 bit instead of 2 ...you may then have to click on "Change".

It maybe necessary to "play" with the column width to get the display into sync as the initial pulse is longer and sods up the columns alignment.

Note every line should end with 15.
An expert is a person who has made all the mistakes that can be made in a very narrow field.
Niels Bohr
User avatar
woodygb
 
Posts: 7072
Joined: 12 Mar 2011, 18:45
Location: Bedford UK

Re: Arduino controlled wheelchair

Postby woodygb » 19 May 2019, 21:28

So something like this ...

0 This indicates a 24v pulse for 300ms +/- 20ms .

116 130 140 132 128 130 165 160 128 178 15 = Start sequence

That's 38 columns ( Each number AND gap is a column ) one more than you want for the next sequence display


THEN...Make the column width 37 to make the numbers align properly.

You should get something like this...192 192 is the Left/ Right and Forward /Reverse NEUTRAL Value from the joystick.

96 192 192 255 231 128 132 128 180 15
96 192 192 255 231 128 132 128 180 15
96 192 192 255 231 128 132 128 180 15
An expert is a person who has made all the mistakes that can be made in a very narrow field.
Niels Bohr
User avatar
woodygb
 
Posts: 7072
Joined: 12 Mar 2011, 18:45
Location: Bedford UK

Re: Arduino controlled wheelchair

Postby woodygb » 19 May 2019, 21:39

Oh! ...Just noticed ...Hardware control NONE ..NOT RS485.
An expert is a person who has made all the mistakes that can be made in a very narrow field.
Niels Bohr
User avatar
woodygb
 
Posts: 7072
Joined: 12 Mar 2011, 18:45
Location: Bedford UK

Re: Arduino controlled wheelchair

Postby gcebiker » 21 May 2019, 06:49

Also only one 1 bit, not 2 bits Woody's afore mentioned "15"
...thats my two bits drunk2
http://greenmobility.com.au/rc-wheelchair-controller/
My YouTube Ch -- https://www.youtube.com/user/gcebiker
User avatar
gcebiker
 
Posts: 879
Joined: 11 Jul 2015, 14:20
Location: Gold Coast, Queensland, Australia.

PreviousNext

Return to Everything Powerchair

Who is online

Users browsing this forum: shirley_hkg, woodygb and 83 guests

 

  eXTReMe Tracker