PINNED - Roboteq Controller - developing for powerchairs

Power wheelchair board for REAL info!

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

Re: Some thinking and questions about Roboteq

Postby Burgerman » 21 Oct 2015, 22:18

Ok. But it will show the same as yours? Wheels off ground.
User avatar
Burgerman
Site Admin
 
Posts: 71104
Joined: 27 May 2008, 21:24
Location: United Kingdom

Re: Some thinking and questions about Roboteq

Postby LROBBINS » 22 Oct 2015, 00:49

Ok. But it will show the same as yours?

I don't really understand your question. The only script I can physically test is the one for the CANbus system, and that's different in lots of other places so not a fair test.

Yes, wheels off the ground is safest to start with, and since you see the problem with the chair on blocks, doing so should still tell you whether this is doing any good.
Ciao,
Lenny
LROBBINS
 
Posts: 5807
Joined: 27 Aug 2010, 09:36
Location: Siena, Italy

Re: Some thinking and questions about Roboteq

Postby Burgerman » 22 Oct 2015, 01:09

I see. OK. Will see what it does!
User avatar
Burgerman
Site Admin
 
Posts: 71104
Joined: 27 May 2008, 21:24
Location: United Kingdom

Re: Some thinking and questions about Roboteq

Postby Burgerman » 24 Oct 2015, 13:25

Spent 2 days rebuilding PC, (don't ask but SSDs can fail too if your power supply starts failing!) fresh windows install, and everything takes about 2 days to kick back into shape. My nightly backup copied all the nicely corrupted operating system files perfectly!

So should be able to get back to trying that file(s) on tues when carers with adequate strength are about!
User avatar
Burgerman
Site Admin
 
Posts: 71104
Joined: 27 May 2008, 21:24
Location: United Kingdom

Re: Some thinking and questions about Roboteq

Postby LROBBINS » 24 Oct 2015, 14:41

oi vey!
LROBBINS
 
Posts: 5807
Joined: 27 Aug 2010, 09:36
Location: Siena, Italy

Re: Some thinking and questions about Roboteq

Postby Burgerman » 24 Oct 2015, 14:43

User avatar
Burgerman
Site Admin
 
Posts: 71104
Joined: 27 May 2008, 21:24
Location: United Kingdom

Re: Some thinking and questions about Roboteq

Postby LROBBINS » 24 Oct 2015, 16:00

Yep, that's what I meant.

Aside from weekly file backups, I make monthly Clonezilla images of my drive and always keep at least three. So far, I've not gotten into a non-"restorable to near current" situation. My wife is more casual about things, hadn't made a drive image in ca. 8 months, and now can't because there are surface defects on a couple sectors of her HDD. When she replaces it, or more likely the whole laptop, she will have a good bit of work ahead of her to recover recent stuff and re-install applications.

Ciao,
Lenny
LROBBINS
 
Posts: 5807
Joined: 27 Aug 2010, 09:36
Location: Siena, Italy

Re: Some thinking and questions about Roboteq

Postby Burgerman » 24 Oct 2015, 16:28

Well I do weekly disk images, and have a bunch of 1tb backup disks. And can boot from win7 64, win10 64, and even an old Linux setup. Use Acronis, windows backup, and the excellent and free to download http://www.macrium.com/reflectfree.aspx as well.

And have a bootable 1tb USB drive. ALL of which had corrupted images going back a month, that were all "checked" for accuracy. All caused by a faulty (noisy) power supply on the SSD disks, meaning every backup worked, and had the same corrupted data problems as each other...

Sometimes you just cant win...

Found incidentally using that expensive data logging Fluke trend test meter Massive spikes that don't show on my other meters...
User avatar
Burgerman
Site Admin
 
Posts: 71104
Joined: 27 May 2008, 21:24
Location: United Kingdom

Re: Some thinking and questions about Roboteq

Postby Williamclark77 » 25 Oct 2015, 18:54

I have a pair of 1.5tb drives I back up to. All .exe files from the programs I use are on there too. Winders is on a separate ssd. Winders starts acting stupid I break out the install disc and start over. I just updated to Winders 10 this morning. We'll see how it goes. Not bad so far.

Quick video. Trying to hold my hand out of the way so you can see the joystick. Volume amplified to help hear the motors react. It wheelies (or tries to) while still turning. Same with reversing direction. Immediate. This is with the script I said I was using. It physically can't react any quicker. Wheelspin or wheelie onto one tire.

http://www.willsjunk.com/Other/WillChai ... -wWtQcVR/A

Motor power follows the accel smoothly, plateaus wide open, then decelerates smoothly. No increase as rpm increases.
Image

Same thing, just faster accel rate by pushing my accel pot forward. (as smooth as I can operate the joystick)
Image

Zero turn full left stick then full right stick. Motors follow the commands quickly. I can up "AccelMotorComp" and "DecelMotorComp" to make the power almost lay on top of the commands. Makes the chair feel twitchy though. It feels like the electronics are going faster than the hardware can move.
Image

Latest revision. Same settings. However, the chair is 1/4 to 1/2 of a second behind the joystick while turning in place. As BM pointed out, the corners react normally though. I crash into stuff. Volume amplified to hear the motors react.
http://www.willsjunk.com/Other/WillChai ... -p77wXL9/A
User avatar
Williamclark77
 
Posts: 1182
Joined: 21 Mar 2013, 01:18
Location: South Mississippi, United States

Re: Some thinking and questions about Roboteq

Postby Burgerman » 25 Oct 2015, 19:32

I crash into stuff. Yes!

Will be able to test this when new power supply arrives. Cant get the roboteq thingy working on my laptop.
User avatar
Burgerman
Site Admin
 
Posts: 71104
Joined: 27 May 2008, 21:24
Location: United Kingdom

Re: Some thinking and questions about Roboteq

Postby LROBBINS » 25 Oct 2015, 20:44

I wish we could get coordinated. Will - I don't know what you are referring to as the "latest" script. I'd like to figure out how a delay got introduced. Also, do note that John (and I) have "AccelMotorComp" and "DecelMotorComp" set at 0, and this may be a major difference - what values are you using?

I'm a bit nervous about John even trying these on his chair as they boost accel and decel in proportion to motor current both when it's high during initial acceleration and deceleration, but then again as motor current rises at high speeds - and he already has an almost runaway acceleration then. What I'm trying to do for now with the TurnAccelBoost and TurnDecelBoost is separate the turn-in-place and speed delay problems to deal with them one at a time. After the turning is dealt with, there is code already in the new script will use Accel/DecelMotorComp, but in a slightly different way from previously. It will again boost accel and decel based on motor current, but on acceleration the boost will go away as speed climbs and on deceleration the boost will go away as speed falls - hopefully giving as much boost as needed when starting either maneuver, but avoiding a secondary accel/decel boost as things progress.

If John finds that the new TurnAccelBoost and TurnDecelBoost still do nothing with the revised program, then there's still some major error in how I implemented it in his script. In Rachi's it has a major, major effect on turn-in-place, but there are a lot of things different in her script and yours because things such as joystick averaging are handled in the Master CANbus module not in the Roboteq, and Master doesn't time share its processor the way the Roboteq does between script and motor control. (The errors that were in the earlier versions I posted weren't there in Rachi's because her script does have Option EXPLICIT at the top so I couldn't mess up variable use as I did in those.) From now on, any of your scripts that I post will also have Option EXPLICIT and a long series of DIM statements.

In any case, I had TurnAccelBoost and TurnDecelBoost at 100 on Rachi's, lowered base accel/decel values from 5000 to 500, and still had very snappy turn-in-place - much snappier than with accel/decel at 5000 and none of this seemingly small boost. Indeed, too snappy and we were back to a lot of rocking when driving from the attendant joystick. I dropped them back to 50 and lowered motor resistance slightly, and things smoothed out. Seemed OK with Rachi not in the chair, but with her weight aboard (only 30kg but fully half or more on the rear casters) it would occasionally have trouble starting a turn. I've just moved it back up partway to 70 and will see tomorrow how it is with her aboard.

Ciao,
Lenny
LROBBINS
 
Posts: 5807
Joined: 27 Aug 2010, 09:36
Location: Siena, Italy

Re: Some thinking and questions about Roboteq

Postby Williamclark77 » 25 Oct 2015, 23:11

Sorry, I meant AccelSteerMixWeight and DecelSteerMixWeight. I have AccelMotorComp and DecelMotorComp on 0 also.

I don't know when I'll have time to try the latest scripts you posted for BM. I have not tried them. I was referring to just previous when the joystick averaging was tried. It may be easier if we go back to a prefix numbering system. 1.0.1, 1.0.2, etc.
User avatar
Williamclark77
 
Posts: 1182
Joined: 21 Mar 2013, 01:18
Location: South Mississippi, United States

Re: Some thinking and questions about Roboteq

Postby Burgerman » 28 Oct 2015, 15:00

Don't buy cheap Seagate 3TB storage drives. I fitted two, when I added my new power supply yesterday. One stops the machine booting altogether. So has to be unplugged. Just locks up at loading operating system stage, the other was fine, I partitioned and formatted it, now its making the click of death 1 day later...

So now waiting for 2 replacements (different make) tomorrow. Make me mad! Wait, wait, wait... So computer almost back up and running!

Seagate! https://www.backblaze.com/blog/3tb-hard-drive-failure/

This guy has 4000 of them! Only 10 percent still work after 3 years... Should have read that BEFORE ordering them!

Seagate Barracuda 7200.14
(ST3000DM001) 3TB 485 disks, 35.4% failure 12 months.
User avatar
Burgerman
Site Admin
 
Posts: 71104
Joined: 27 May 2008, 21:24
Location: United Kingdom

Re: Some thinking and questions about Roboteq

Postby Burgerman » 30 Oct 2015, 12:04

OK PC back up and running.

Now after adding 2 replacement Western digital Green 3TB disks I have 10 Terabytes storage! (7 disks). Thats completely mad. I remember going to a freinds house to see a 250 megabyte disk he just bought and asking if he would ever need all that and what for?

So will be able to test again on monday!
User avatar
Burgerman
Site Admin
 
Posts: 71104
Joined: 27 May 2008, 21:24
Location: United Kingdom

Re: Some thinking and questions about Roboteq

Postby greybeard » 30 Oct 2015, 15:11

<10 Terabytes storage!>

Mightily impressive! I just can't begin to imagine what could take up so much storage space. Don't think I've ever managed to exceed 80 gigs! :D
greybeard
 
Posts: 1152
Joined: 28 Aug 2014, 20:15
Location: Dorset, UK

Re: Some thinking and questions about Roboteq

Postby Burgerman » 30 Oct 2015, 15:58

17 years worth of websites. 17 years of word documents, and pre injury work from up to 25 years. My camera does 60mb raw files and 20mb jpg images, and theres almost a TB of that... Movies, HD stuff, windows backups, complete PC multi boot operating system images, laptop disk disk images, and so on.

But I have about 40 percent free now!
User avatar
Burgerman
Site Admin
 
Posts: 71104
Joined: 27 May 2008, 21:24
Location: United Kingdom

Re: Some thinking and questions about Roboteq

Postby Irving » 30 Oct 2015, 16:09

greybeard wrote:<10 Terabytes storage!>

Mightily impressive! I just can't begin to imagine what could take up so much storage space. Don't think I've ever managed to exceed 80 gigs! :D


Umm.. digital pics, videos, multiple virtual machine images, and more... I have 4 x 2TByte drives in a RAID 0+1 resilient array giving 3.7Tb on network accessible storage which currently holds about 0.7Tb of pictures, 843 music CDs @ 0.7Gb, 147 DVDs @ 5Gb and 37 Blu-ray @ 25Gb = 3Tb. All backed up online of course.
C5/6 A (complete)
Puma 40, 75Ah LiFePO4 (pic is on tour @ Whistler, BC)
Puma 40 backup, 73Ah MK (for now)
Spectra Plus (weedy 40Ah MK)
User avatar
Irving
 
Posts: 2114
Joined: 04 Dec 2012, 11:51
Location: NW London

Re: Some thinking and questions about Roboteq

Postby Burgerman » 30 Oct 2015, 17:28

Bit like powerchairs. There are those that use them and those that sit in them.

With computers there are 101 PC users that had a PC in the dining room, because it was the done thing. But didn't know why. They sit at a search engine typing stuff to see what they can find. So stuff like facetube and twitwallbook etc were all invented so they knew why they had one. And so these users could be taken advantage of properly by advertising at them. I never see any ads/popups. Not interested in face-tube etc one bit. (If you don't want to either search for adblock plus... And click the download its free)

Or there are power users that murder their PCs, like me! I don't even have a TV. I wouldnt want one. They are restrictive and only have junk/repeats/adverts. I can watch anything you can with one, and another 10 countries TV as well. And any film ever made (most likely) often in better quality, and before its even available on disk. On a 30 inch monitor, or if I had one a wide screen TV. I also build websites, and do a lot of physics and engineering study for fun and build PCs. Everything in the universe from software to the latest movies or TV series from around the planet is all available free on newsgroups, or torrents or worse! My PC never sleeps. Its always busy. As is my internet connection hammered to death!

This doesn't include a 2TB removable full of movies.
Attachments
Image1.gif
User avatar
Burgerman
Site Admin
 
Posts: 71104
Joined: 27 May 2008, 21:24
Location: United Kingdom

Re: Some thinking and questions about Roboteq

Postby LROBBINS » 30 Oct 2015, 19:57

Hi John,

Glad you've got your computer back up and running, and awaiting results of next week's testing. Perhaps your next "little" project will be to make something that would let you jack up your chair without needing a helper. I think you have enough ground clearance, and a tough enough battery box, to even use an automotive floor jack -- then all you'd need is some immovable object you can use to chock the casters and up she goes.

While waiting to see what this does on your setup, I have continued to play with it on Rachi's chair. Recall that with boost = 100 at turn = TurnPotFwdMin and motor resistance = 95 milliohms, there was a bit of "snatch" when starting out and I had to lower boost to 75 and resistance to 85 milliohm to feel comfortable. Figuring that, for turn-in-place, the acceleration/deceleration boost is needed right away, but not needed once moving well, I set it to apply full boost at just 1% of output (10 out of 1000), but also added a calculation so that there's full boost when motor current is 1000 (100 Amps) and goes to no boost at 0 motor current. Doing this, I can add lots of boost (even 400), and bring motor resistance back up to 110 (ideal for these motors) without having that initial jerkiness, and no hesitation when starting as happened with compensation a bit low. This was with Rachi not aboard, and I've set it back to a more moderate boost = 100 but left it at 110 milliohms until I see how it feels with her weight added.

Ciao,
Lenny
LROBBINS
 
Posts: 5807
Joined: 27 Aug 2010, 09:36
Location: Siena, Italy

Re: Some thinking and questions about Roboteq

Postby Burgerman » 30 Oct 2015, 20:17

I may have some questions about which script to try, and what to try. I am a bit confused about how all these similar sounding names of settings interact and what I will see on blocks.

Forgetting turn for a moment, forward acc and deceleration are also slow at first, and build over time. So stopping a wheelie is "sluggish" and you almost flip it. Starting to accelerate from 0 speed is quite gentle and builds up till it wheelies. I have to throttle back as speed builds.

when slowing, a centred stick causes mild deceleration to increase until tyres screech and I nearly fall out of the front. So the eventual acc/dec rates are quite high. Initial ones are quite low.

Its almost the same problem as the turn? Maybe.
User avatar
Burgerman
Site Admin
 
Posts: 71104
Joined: 27 May 2008, 21:24
Location: United Kingdom

Re: Some thinking and questions about Roboteq

Postby LROBBINS » 30 Oct 2015, 22:05

To start with, what I want you to try deals only with turn-in-place. If the approach used for that works, it will give me a good idea of how to deal with the speed accel/decel problem.

There are two scripts to try (after changing user settings variables, including brake pin number) to your preferences:

(1) "John 10-21-2015 temp2" This script applies full boost at turn power of 10%. Turn power is NOT the same as Steering, but is the current differential power at the motors as acceleration proceeds and AFTER motor compensation - which boosts the commanded turn rate, and then the applied power, when current draw is high. Because of motor compensation you could easily get 10% turn power, or even more, when the stick is barely moved when starting a turn. You should lower the base accel/decel parameters by at least 1/2 before trying this. On Rachele's chair, I was able to lower it from 5000 to just 500. If this works on yours as it does on Rachi's, it should get rid of much of the delay in starting and stopping turn-in-place, and the lowered base accel/decel might smooth out the increased-accel/decel-with-speed changes. It would be useful to know if it make any difference in that, but the code doesn't actually attempt to deal directly with that.

(2) "John 10-21-2015 temp2 mod" Basically the same as the preceding, but full boost comes on at only 1% turn power, essentially as soon as the joystick is moved. This one also includes some print lines that will list what's happening in the console tab (or in any serial monitor program). Do a few turn-in-place moves and copy and paste that output to a text file and send it to me.

Ciao,
Lenny
LROBBINS
 
Posts: 5807
Joined: 27 Aug 2010, 09:36
Location: Siena, Italy

Re: Some thinking and questions about Roboteq

Postby Burgerman » 30 Oct 2015, 22:20

Then I will need to be in the chair? I suppose. Might take a day or two then.
User avatar
Burgerman
Site Admin
 
Posts: 71104
Joined: 27 May 2008, 21:24
Location: United Kingdom

Re: Some thinking and questions about Roboteq

Postby LROBBINS » 30 Oct 2015, 23:06

No, you could even do this by RC or on jacks since you've said that the turn-in-place delay is obvious even under no load. Just have Roborun running on a laptop with the console tab open. When done, copy the whole output and save it.
LROBBINS
 
Posts: 5807
Joined: 27 Aug 2010, 09:36
Location: Siena, Italy

Re: Some thinking and questions about Roboteq

Postby Burgerman » 31 Oct 2015, 01:08

Was worried about the affect of compensation not being evident.
User avatar
Burgerman
Site Admin
 
Posts: 71104
Joined: 27 May 2008, 21:24
Location: United Kingdom

Re: Some thinking and questions about Roboteq

Postby ex-Gooserider » 04 Nov 2015, 10:03

I thought I posted a while back about my project to turn a Harbor Fright motorcycle lift into a chair lift. I started with this, http://www.harborfreight.com/high-position-motorcycle-lift-99887.html and made the base about 4" wider, and the fork width adjustable....

Almost any chair will now fit between the legs on the base, and the forks go under the battery box... Add a couple of motorcycle tie-down straps to make sure things don't move (I'm paranoid), and it's wonderful for working on a chair... Easy to pick it up and at maximum the wheels are at waist height, so easy to reach anything on the chair... For testing I'd just boost it up enough to get the wheels off the ground....

I want to make the wheels on it better, but even as is, it isn't bad to move around. I've even deployed it and loaded my power chair on it while sitting in my manual chair...

However it is VERY stable, I don't get significant wobble or sway, even with the chair all the way up and really muscling on it (the lift slides on the concrete floor first)

When it isn't in use, I slide the forks under a table and the only thing that is left taking up floor space is the upright lift post and the jack....

Probably far easier to work on build projects than the bed is, and doesn't need extra help to get the chair on and off....

ex-Gooserider
T-5, ASIA-B
Jazzy 1100
Jazzy Select 6
Quickie Q-7
Invacare Mariner
Want to make / get a better chair, ideally one that stands.
User avatar
ex-Gooserider
 
Posts: 6232
Joined: 15 Feb 2011, 06:17
Location: Billerica, MA. USA

Re: Some thinking and questions about Roboteq

Postby Burgerman » 05 Nov 2015, 17:06

baseM2accel = 2200 boostM2accel = 2200 baseM2baseM1accel = 2200 boostM1accel = 2200 baseM1decel = 2200 boostM1accel = 2200
baseM2accel = 2200 boostM2accel = 2200 baseM2baseM1accel = 2200 boostM1accel = 2200 baseM1decel = 2200 boostM1accel = 2200
baseM2accel = 2200 boostM2accel = 2200 baseM2baseM1accel = 2200 boostM1accel = 2200 baseM1decel = 2200 boostM1accel = 2200
baseM2accel = 2200 boostM2accel = 2200 baseM2baseM1accel = 2200 boostM1accel = 2200 baseM1decel = 2200 boostM1accel = 2200
baseM2accel = 2200 boostM2accel = 2200 baseM2baseM1accel = 2200 boostM1accel = 2200 baseM1decel = 2200 boostM1accel = 2200
baseM2accel = 2200 boostM2accel = 2200 baseM2baseM1accel = 2200 boostM1accel = 2200 baseM1decel = 2200 boostM1accel = 2200
baseM2accel = 2200 boostM2accel = 2200 baseM2baseM1accel = 2200 boostM1accel = 2200 baseM1decel = 2200 boostM1accel = 2200
baseM2accel = 2200 boostM2accel = 2200 baseM2baseM1accel = 2200 boostM1accel = 2200 baseM1decel = 2200 boostM1accel = 2200
baseM2accel = 2200 boostM2accel = 2200 baseM2baseM1accel = 2200 boostM1accel = 2200 baseM1decel = 2200 boostM1accel = 2200
baseM2accel = 2200 boostM2accel = 2200 baseM2baseM1accel = 2200 boostM1accel = 2200 baseM1decel = 2200 boostM1accel = 2200
baseM2accel = 2200 boostM2accel = 2200 baseM2baseM1accel = 2200 boostM1accel = 2200 baseM1decel = 2200 boostM1accel = 2200
baseM2accel = 2200 boostM2accel = 2200 baseM2baseM1accel = 2200 boostM1accel = 2200 baseM1decel = 2200 boostM1accel = 2200
baseM2accel = 2200 boostM2accel = 2200 baseM2baseM1accel = 2200 boostM1accel = 2200 baseM1decel = 2200 boostM1accel = 2200
baseM2accel = 2200 boostM2accel = 2200 baseM2baseM1accel = 2200 boostM1accel = 2200 baseM1decel = 2200 boostM1accel = 2200
baseM2accel = 2200 boostM2accel = 2200 baseM2baseM1accel = 2200 boostM1accel = 2200 baseM1decel = 2200 boostM1accel = 2200
baseM2accel = 2200 boostM2accel = 2200 baseM2baseM1accel = 2200 boostM1accel = 2200 baseM1decel = 2200 boostM1accel = 2200
baseM2accel = 2200 boostM2accel = 2200 baseM2baseM1accel = 2200 boostM1accel = 2200 baseM1decel = 2200 boostM1accel = 2200
baseM2accel = 2200 boostM2accel = 2200 baseM2baseM1accel = 2200 boostM1accel = 2200 baseM1decel = 2200 boostM1accel = 2200
baseM2accel = 2200 boostM2accel = 2200 baseM2baseM1accel = 2200 boostM1accel = 2200 baseM1decel = 2200 boostM1accel = 2200
baseM2accel = 2200 boostM2accel = 2200 baseM2baseM1accel = 2200 boostM1accel = 2200 baseM1decel = 2200 boostM1accel = 2200
baseM2accel = 2200 boostM2accel = 2200 baseM2baseM1accel = 2200 boostM1accel = 2200 baseM1decel = 2200 boostM1accel = 2200
baseM2accel = 2200 boostM2accel = 2200 baseM2baseM1accel = 2200 boostM1accel = 2200 baseM1decel = 2200 boostM1accel = 2200
baseM2accel = 2200 boostM2accel = 2200 baseM2baseM1accel = 2200 boostM1accel = 2200 baseM1decel = 2200 boostM1accel = 2200
baseM2accel = 2200 boostM2accel = 2200 baseM2baseM1accel = 2200 boostM1accel = 2200 baseM1decel = 2200 boostM1accel = 2200
baseM2accel = 2200 boostM2accel = 2200 baseM2baseM1accel = 2200 boostM1accel = 2200 baseM1decel = 2200 boostM1accel = 2200
baseM2accel = 2200 boostM2accel = 2200 baseM2baseM1accel = 2200 boostM1accel = 2200 baseM1decel = 2200 boostM1accel = 2200
baseM2accel = 2200 boostM2accel = 2200 baseM2baseM1accel = 2200 boostM1accel = 2200 baseM1decel = 2200 boostM1accel = 2200
baseM2accel = 2200 boostM2accel = 2200 baseM2baseM1accel = 2200 boostM1accel = 2200 baseM1decel = 2200 boostM1accel = 2200
baseM2accel = 2200 boostM2accel = 2200 baseM2baseM1accel = 2200 boostM1accel = 2200 baseM1decel = 2200 boostM1accel = 2200
baseM2accel = 2200 boostM2accel = 2200 baseM2baseM1accel = 2200 boostM1accel = 2200 baseM1decel = 2200 boostM1accel = 2200
baseM2accel = 2200 boostM2accel = 2200 baseM2baseM1accel = 2200 boostM1accel = 2200 baseM1decel = 2200 boostM1accel = 2200
baseM2accel = 2200 boostM2accel = 2200 baseM2baseM1accel = 2200 boostM1accel = 2200 baseM1decel = 2200 boostM1accel = 2200
baseM2accel = 2200 boostM2accel = 2200 baseM2baseM1accel = 2200 boostM1accel = 2200 baseM1decel = 2200 boostM1accel = 2200
baseM2accel = 2200 boostM2accel = 2200 baseM2baseM1accel = 2200 boostM1accel = 2200 baseM1decel = 2200 boostM1accel = 2200
baseM2accel = 2200 boostM2accel = 2200 baseM2baseM1accel = 2200 boostM1accel = 2200 baseM1decel = 2200 boostM1accel = 2200
baseM2accel = 2200 boostM2accel = 2200 baseM2baseM1accel = 2200 boostM1accel = 2200 baseM1decel = 2200 boostM1accel = 2200
baseM2accel = 2200 boostM2accel = 2200 baseM2baseM1accel = 2200 boostM1accel = 2200 baseM1decel = 2200 boostM1accel = 2200
baseM2accel = 2200 boostM2accel = 2200 baseM2baseM1accel = 2200 boostM1accel = 2200 baseM1decel = 2200 boostM1accel = 2200
baseM2accel = 2200 boostM2accel = 2200 baseM2999 2880
baseM1accel = 2200 boostM1accel = 2200 baseM1decel = 2200 boostM1accel = 2200
baseM2accel = 2200 boostM2accel = 2200 baseM2baseM1accel = 2200 boostM1accel = 2200 baseM1decel = 2200 boostM1accel = 2200
baseM2accel = 2200 boostM2accel = 2200 baseM2baseM1accel = 2200 boostM1accel = 2200 baseM1decel = 2200 boostM1accel = 2200
baseM2accel = 2200 boostM2accel = 2200 baseM2baseM1accel = 2200 boostM1accel = 2200 baseM1decel = 2200 boostM1accel = 2200
baseM2accel = 2200 boostM2accel = 2200 baseM2baseM1accel = 2200 boostM1accel = 2200 baseM1decel = 2200 boostM1accel = 2200
baseM2accel = 2200 boostM2accel = 2200 baseM2baseM1accel = 2200 boostM1accel = 2200 baseM1decel = 2200 boostM1accel = 2200
baseM2accel = 2200 boostM2accel = 2200 baseM2baseM1accel = 2200 boostM1accel = 2200 baseM1decel = 2200 boostM1accel = 2200
baseM2accel = 2200 boostM2accel = 2200 baseM2baseM1accel = 2200 boostM1accel = 2200 baseM1decel = 2200 boostM1accel = 2200
baseM2accel = 2200 boostM2accel = 2200 baseM2baseM1accel = 2200 boostM1accel = 2200 baseM1decel = 2200 boostM1accel = 2200
baseM2accel = 2200 boostM2accel = 2200 baseM2baseM1accel = 2200 boostM1accel = 2200 baseM1decel = 2200 boostM1accel = 2200
baseM2accel = 2200 boostM2accel = 2200 baseM2baseM1accel = 2200 boostM1accel = 2200 baseM1decel = 2200 boostM1accel = 2200
baseM2accel = 2200 boostM2accel = 2200 baseM2baseM1accel = 2200 boostM1accel = 2200 baseM1decel = 2200 boostM1accel = 2200
baseM2accel = 2200 boostM2accel = 2200 baseM2baseM1accel = 2200 boostM1accel = 2200 baseM1decel = 2200 boostM1accel = 2200
baseM2accel = 2200 boostM2accel = 2200 baseM2baseM1accel = 2200 boostM1accel = 2200 baseM1decel = 2200 boostM1accel = 2200
baseM2accel = 2200 boostM2accel = 2200 baseM2baseM1accel = 2200 boostM1accel = 2200 baseM1decel = 2200 boostM1accel = 2200
baseM2accel = 2200 boostM2accel = 2200 baseM2baseM1accel = 2200 boostM1accel = 2200 baseM1decel = 2200 boostM1accel = 2200
baseM2accel = 2200 boostM2accel = 2200 baseM2
User avatar
Burgerman
Site Admin
 
Posts: 71104
Joined: 27 May 2008, 21:24
Location: United Kingdom

Re: Some thinking and questions about Roboteq

Postby Burgerman » 05 Nov 2015, 17:07

Not sure what I am supposed to be getting with this log.

This was just turn, stop. And turn/reverse slightly, and gun it forwards.

From watching on blocks.
First script without logging seems much the same as before. Maybe slightly better. Hard to tell.

2nd script with logging seems a bit better. As it turn seem to start and stop faster. But it still seems to be not enough.
OK at zero turn.
but turn at full stick, then jam stick forwards, and then the turn seems to continue a while but forward acc begins. So its hard to tell without sitting in it. Part wheel revolution doesn't look much. But it points you in the wrong direction.

I thing we need more of what you just did!

Note: It hasn't affected forward or rearward acc at all.
User avatar
Burgerman
Site Admin
 
Posts: 71104
Joined: 27 May 2008, 21:24
Location: United Kingdom

Re: Some thinking and questions about Roboteq

Postby Burgerman » 05 Nov 2015, 17:07

Code: Select all
'                                           USER SETTINGS BELOW
'***************************************************************************************************************
'***************************************************************************************************************

'==========================================================================================
SpeedPotPin = 5               'analog input pin used for SpeedPot
LeftCurrentSensorPin = 7  'analog input pin
RightCurrentSensorPin = 8 'analog input pin
AlarmPin = 6                     'digital output pin used for low voltage alarm

'WILL and JOHN: I don't know what pins you are using for brakes, set here to silly numbers to allow compilation
Brake1Pin = 1     'digital output pin ??
Brake2Pin = 0     'digital output pin, 0 of only 1 brake pin used

'JOYSTICK AND SPEEDPOT SETTINGS
Damping = 1                        'number of joystick readings to moving average
SpeedPotInstalled = TRUE    'Is speed potentiometer installed?
SpeedPot = 90                     'default if bSpeedPotInstalled = FALSE; 90 allows some headroom for steer/mixing
SpeedPotLowFault = 30        'chair speed used if pot fails giving too low voltage
SpeedPotHighFault = 60       'chair speed used if pot fails giving too high voltage

SpeedPotFwdMax = 100    ' percent speed at highest pot setting, set <100 for lower top
SpeedPotFwdMin = 17
SpeedPotRevMax = 26
SpeedPotRevMin = 13

TurnPotFwdMax = 18
TurnPotFwdMin = 14
TurnPotRevMax = 16
TurnPotRevMin = 14

TurnAtFullSpeed = 100     '100=no reduction of turn rate with speed, 0=turn rate goes to 0 at full speed

' DRIVING CHARACTERISTICS
'the following override the settings in the Roboteq configuration
M1Accel = 2200
M2Accel = 2200
M1Decel = 2200
M2Decel = 2200

AccelMotorComp = 0 'adjust accel & decel for motor compensation 0 = no effect,
DecelMotorComp = 0 'but I have no idea of how sensitive this parameter will prove to be
                    '20 makes a noticeable difference in initial acceleration in bench test
AccelSteerMixWeight = 600 '0 = no effect of M1-M2 motor power on accel/decl, 100 = full effect
                          'if 100 is not enough, it's OK to try values > 100
DecelSteerMixWeight = 600 '0 = no effect of M1-M2 motor power on accel/decl, 100 = full effect
                          'if 100 is not enough, it's OK to try values > 100
TurnAccelBoost = 100 'a number >= 1, increases acceleration while turning:
                     '100 would double accel when turn = TurnPotForwardMax and speed = 0
TurnDecelBoost = 100 'a number >= 1, increases deceleration while turning

' BACK STICK BRAKING
DecelBoost = 150          'percent of added deceleration to use if Throttle crosses 0.
                          'effect of this is proportional to how far past 0 the stick is moved.

MotorResistance = 55       'MOTOR COMPENSATION. (SETTING THIS TOO HIGH IS DANGEROUS)
                          'Set to less than motor mohms and then adjust based on chair response
UseCurrentSensors = TRUE 'Set to TRUE if using external current sensors on analog inputs 7 & 8
                          'Set to FALSE to use Roboteq's internal motor current estimates
'parameters added to allow motor compensation boost at low estimated motor current; irrelevant if
'equipped with motor current sensor
BoostStart = 5           'no boost below this to avoid drift at small or no joystick movements
BoostEnd = 500            'safety limit - make sure there's no boost at 50% or more stick throw
MaxBoostFactor = 1        'increase MotorCompensation by this factor at low currents; 0 = no boost
BoostEndCurrent = 100     'taper boost to zero when this value of motor current (10X amps, e.g. 60 = 6 Amps)
                          'is reached
' PROGRAM TIMING
MainLoopWaitTime = 0      'milliseconds to wait for each cycle through MainLoop: set to 0 for max loop speed
CyclesPerSpeedPotRead = 200/(MainLoopWaitTime+1)'number of cycles between each read of pot
                                                'reduce number of cycles if there is a wait time in main loop
TimeBetweenAmpHrReads = 1000     '1000 mSec = 1 second - time interval between checking current draw
TimeBetweenAmpHrOutputs = 10000  '10000 msec = 10 seconds - time interval for sending current used to display
                                 'device
' MISCELLANEOUS
SuppressPrinting = TRUE   'Set to TRUE to suppress printing to speed and smooth controller/PC
                          'interaction; PRINT of current used will not be suppressed, but is sent only
                          'once every vTimeBetweenAmpHrOutputs msec
AllowSerialInput = FALSE  'Set to TRUE if using serial joystick or emulation
FullRechargeVoltage = 449 'ten times battery voltage; 44.9V = 3.45V/cell - voltage present only
                          'immediately after recharging -- used to reset AmpHrs-used measurement to 0
LowVoltsAlarm = 150       'LENNY tenths of volts, 410 = 3.14V/cell for 13s pack
NoLoadCurrent = 30        'current with no motors running (20 = 2 Amps) YOU SHOULD CHECK THIS ON YOUR CHAIR AND
                          'SET THE VALUE JUST OVER WHAT YOU MEASURE
NoVoltReads = 50          'no. of times to read quiescent volts before averaging

'***************************************************************************************************************
'***************************************************************************************************************
'                                              END USER SETTINGS
User avatar
Burgerman
Site Admin
 
Posts: 71104
Joined: 27 May 2008, 21:24
Location: United Kingdom

Re: Some thinking and questions about Roboteq

Postby Burgerman » 05 Nov 2015, 17:08

TurnAccelBoost = 900
TurnDecelBoost = 900

Seems lots better? I think. Whats the biggest number that will work?
Still has no affect on forward acc which is good.

Need to test in the chair. But that involves transfers, from bed etc. Need to tilt seat back (more dump) first. So may be at the weekend when a spanner will be here (with a hammer!)
User avatar
Burgerman
Site Admin
 
Posts: 71104
Joined: 27 May 2008, 21:24
Location: United Kingdom

Re: Some thinking and questions about Roboteq

Postby LROBBINS » 05 Nov 2015, 17:55

No, that file doesn't say much. The print every 100 loop cycles missed all but one of the points where an adjustment actually took place! But, I have not been idle in the meantime, and now that I know that what I sent you did have a positive effect, I am almost ready for the next step.

Within a few hours, a day at most, I will get you a new file as I've been working on and testing this in Rachi's system. The code is much simplified (for example, it uses the same AccelMix/DecelMix user settings for this acceleration boost as was used for forward/reverse turning) and now includes accel/accel adjustment during straight forward and aft movement. On Rachi's it is working like a charm for both turn-in-place and for the non-uniform accel and decel during straight movement (which I finally could feel when I got the chair moving fast enough).

The only reason that there will be a bit of delay is that I want to go over it line by line to make sure the "translation" from the CANbus system to the analog joystick system is correct, and I haven't much stamina because I continue to be in intense pain from the slipped disc? failed hip? or whatever else it is that's making me miserable (had an MRI on Tuesday, but don't have the results yet).

So, till later, or till tomorrow.

Ciao,
Lenny
LROBBINS
 
Posts: 5807
Joined: 27 Aug 2010, 09:36
Location: Siena, Italy

PreviousNext

Return to Everything Powerchair

Who is online

Users browsing this forum: No registered users and 626 guests

 

  eXTReMe Tracker