Asked

Chopper Update, Sabertooth Movement Panel

Thanks to the new max speed and dead zone settings for Joystick, Chopper is up and around. Before limiting he max speed he was crazy fast I could barely control him, Set to 60 in the max speed setting right now. Still a fair bit I need to fine tune but overall its coming together.


ARC Pro

Upgrade to ARC Pro

Unlock the true power of automation and robotics by becoming a proud subscriber of Synthiam ARC Pro.

#1  

Oh wow ! thats awesome. Great job. Details!:)

PRO
Synthiam
#2  

That movement looks real sharp! What else do you think would help with your needs? From the video it looks better than perfect:) . But you’d know from the controls.

#3   — Edited

It's not quite as smooth as I'd like for turning, seems to be times when turn delays slightly which isnt present on front back movement. Can't quite pin down why, was getting late last night so decided to call it. I'm thinking of exploring Uart connection options vs the simplified serial. Not sure if that's a factor here.

Overal super happy with it, first Con is end of October so still have a month to finish things off and add some more features.

PRO
Synthiam
#4  

This is how the joystick works. Is it the spin on spot or direction that you find difficult?

User-inserted image

#5  

Thanks thats very clear, the spin on the spot. Maybe it's a dead spot setting issue, it's the spin on spot that seems to have the delay.

Now that I see this I'm wondering if it's the area defined as spin. Maybe it's coming in as a forward/left vs a spin left and it's causing a delay sometimes. Looking at it you would barely notice but controlling it sometimes you feel for a second like it just doesn't quite register. Maybe when I get the smooth response it's when I'm right on track with the spin area but sometimes I hit the forward/left?

PRO
Synthiam
#6  

The deadzone also defines the spin. Try increasing the deadzone

PRO
Synthiam
#7  

Here's how the deadband looks..

User-inserted image

#8   — Edited

Just got a chance to do some driving in a more open space and it seems to be that the left motor is not turning as fast, causing a fair amount of drift. What I'm seeing is the Fwd/Right works well but Fwd/Left is almost straight. I think that's part of why the spin does not quite seem right.

I'm thinking I need to trim it somehow for a little more input on the right.

Here's a video showing stick input and the robots reactions. You can see sometimes there's nothing. Its almost like a stall, but with 24v and 150W motors I should be good, I would think. Its a 2 x 12 Sabertooth so 288w normal, 576w peak, the bot weights in at under 60lbs. https://youtube.com/shorts/8p652dEyXOA

PRO
Synthiam
#9  

That’s what the kangaroo is good for combined with encoders. Otherwise the motors will spin at different speeds due to the variances in manufacturing.

i could add a compensation value in the sabertooth Movement Panel - but it wouldn’t be consistent across speeds. It would be a hack that wouldn’t be reliable but we can try it.

the real solution would be using encoders with the kangaroo movement panel. I know you’re in a time crunch so it might be a future upgrade for your bot

#10   — Edited

Thanks for all your help with this, much appreciated.

I was looking at a kangaroo for long term solution for the dome motor, right now it's actually 4 hobby motors running of an old h-bridge auduino shield I had kicking around.

I will look into trying it on the drives first when I get it.

I made some progress late last night, I increased the buad rate to 19200( I had tried it before but was when the motors had no max limit). I found the max speed below 100 starts to cause issues, at around 150 turning working pretty well but again the bot starts to become far to fast again to control.

After going over everything I started to think about drag and the front wheel. The setup puts a fair amount of weight there and friction. The motors have force the wheel if the direction is a considerable change. I removed the front wheel and temp tried with the legs straight. Now it's closer to a tank and there's no other forces at play. It was a considerable improvement.

I did a quick redesign and printed up a thrust bearing made using BBs. Also brought the legs closed to the body to reduce the turning cycle.

Now he turns smoother. I just missed a camber to try and help straighten out the wheel. Revision 2 is printing now. My observation from this is it seems turning required move effort than front to back, in my case and any kind of bot that could have drag from additional not assisted wheels.

Max speed I'm guessing apllies consistent to all range of movement? I don’t know if this is possible but if the max speed was linear based on left/right input it would help in situations like this.

Or maybe a turning input max speed boost? Would work by if there was left/right input passed a dead zone threshold boost max speed by x.

On the compensation value I could see some use in that for me my speed is going to be pretty consistent so it would be nice to have some minor tweeking thats easily accessible.

PRO
Synthiam
#11  

Do you mean spin on the spot speed?

because a forward slight turn speed wouldn’t be doable. Because turning while moving forward is moving forward

#12  

Yep the spin, just to give the option for a boost.

PRO
Synthiam
#13  

Okay - so the max speed for forward/reverse would be one parameter. And a second parameter would be the spin on the spot speed.

ya that’s very doable

PRO
Synthiam
#14  

Try the new joystick xinput joystick control which has a max spin speed added

User-inserted image

#15  

Thanks I got to try it briefly and it looked like this is going to work, however, ran into a major snap.

I went out to dinner and came back to do some testing, Flicked on the battery switch and the Sabertooth burst into flames, I'm talking major flames. No harm to the droid killed the battery switch right away.

I have no idea why, I'm completely dumbstruck. Have not touched the electrical, been wired the same way since the start. Going to reach out to robot shop and see what they say. I ordered one right away from Dimension, got a 2 x 25 as they were in stock. I'm just hoping I can get something in place and finishes testing in time.

#16   — Edited

Hey DJ, I have no way to contact you privately so reached out via Linkedin to discuss something

PRO
Synthiam
#17  

I don't know what it is with the sabertooth controllers, but I've seen many end up breaking like that.

Sorry, I don't manage my LinkedIn account.

#18  

Basically they said it's because of a ground loop caused by adding the reference ground between the 0v and the controller when the Sabertooth and controller are powered from the same source.

I have a new one coming and they have agreed to try and fix the old one free of charge. So can't fault that for service.

My thought is that it would be a fairly common situation and both the EZB and Sabertooth documentation specifically mention the requirement for a ground reference but no mention of the risk a ground loop could cause.

PRO
Synthiam
#19   — Edited

How are they able to determine a ground loop? That would mean you have resistance on the common ground between devices: https://en.wikipedia.org/wiki/Ground_loop_(electricity)

I do not believe the person you spoke to has experience in electronics. However, you are getting it repaired, but I am not confident that is the case.

You see, absolutely everything in an electronic circuit requires a common ground. This is irrelevant to how many power sources there are. There can be one power source or sixty-five million power sources - common ground is mandatory. If a common ground were not implemented in the circuit, the components on the circuit would indeed not function correctly and most likely be damaged.

A common misunderstanding is associated with what counts as ground. The ground is a point in the circuit designated by the circuit designer as the point against which all circuit voltages are measured. The ground can also be known as 0(zero)V. The ground is often but does not have to be the negative pole of the supply. Ground could be the positive pole of the supply or the midpoint of a split supply. The ground is not a point on a particular component; for example, the battery's negative (or positive) pole is not ground.

So if they're telling you that there should not be a gnd connected between the sabertooth and ezb controller, they should not be in the position of advising customer support.

#20   — Edited

I totally agree that's why I was looking to take this maybe to some option of PM but there's no Private message function on Synthiam (Future option maybe) to share their responses.

My experience with ground loops usually is in relation to inducing interference in RF lines, I work in Comms and Nav systems.

I don't see how this could have contributed to the failure in the DC system, and the circuit I have. My concern is that I follow their advice and the new controller blows.

My only other thought was that the motor cut-off switches in some way contributed to this, as during power up I had them in the off (open position) it allows me to freewheel the droid with the battery disconnected and not worry about the sabertooth regenerative system. However, that's a fairly common setup from what I have seen from R2 builders.

As I mentioned in the first post I'm really at a loss as to what caused this.

PRO
Synthiam
#21   — Edited

Sorry I can’t help people individually, or I’d never have time to breath haha

if they say it’s a ground loop, check the resistance between the sabertooth’s gnd and controller gnd. Show them there’s no resistance. Explain it must be a defective controller.

it would also be useful if you knew what component was damaged. That would tell us what broke and therefore lead to what could have happened to break it (or prove faulty component)

#22  

Lol, understood. It was mainly as I don't like talking negatively about a company in a public forum, and a was nervous this may come off that way.

All of the bucks pass through ground so they are all at the same potential, same as the Sabertooth. It all makes no sense to me.

I've posted up the details in the R2 builders club and see what people say, I know others are wired the same way with no issues.

#23   — Edited

Wow, what a cool robot! I love it! I've been off line this past week with no power or internet due to Hurricane Ian. I live in Cape Coral, Fl and just got back service. When I logged back on to this forum your post blew my mind.

I'm very interested in your struggle to overcome your issues. I've used a lot of Sabertooth motor controllers with and without a kangaroo and this it the first time I heard of one blowing up. DJ says he has knowledge of this happing to others and I sincerely believe him. His guidance in these matters can be trusted. You're in good hands. LIke DJ, I have a hard time believing a ground loop could cause this. Most likely a weakness in the Sabertooth or some component attached to it. I'd first point to the Sabertooth being faulty. They have protection built in to keep power issues and shorts from killing them and keep this from happening. I hope you find the cause and report back to us. I've always felt that the Sabertooth family is built like a tank and I never worried about this kind of thing happening. Until now.:(

You mentioned you were talking to the Robotshop. I assume you also contacted DE since you say someone is repairing it for free for you. Which company did you get the ground loop info from? I've contacted DE's customer service many time and have always found them to be very responsive, quick and helpful.

Good luck with resolving your issues. I'll keep watching this thread with much interest.

#24   — Edited

Hi Dave, glad things are coming back online for you, we were just hit by Fiona the other week. Luckily only without power for 10 hours, some are still out.

I'm interested in how your sabertooth is connected with regards to power. Do you use an ezb or auduino, how are the components wired?

My diagram is below hopefully pdf to jpg doesn't lose too much quality.

User-inserted image

Robotshop just let Dimesion take over and they supplied the recommendation and the offer to repair.

I've checked all other components and wiring now and everything works and nothing seems out of spec. Everything I've read seemed to indicate that these units were pretty bulletproof, apart from cross connections or driving thr motors with the battery out.

#25   — Edited

@Davidaharrison, I feel very grateful and blessed. There was a lot of loss of life and property in my area from this category 4.9 hurricane. There are still over 1K without power. The area is starting to recover quicker now but things will never be the same around here again. I'm glad you all faired good through Fiona .

Anyway, I don't have a cool schematic like you so I hope I can explain my setup.

Actually I've only used a Sabertooth once without a Kangaroo X2. That was to drive a tread section of a big robot like a tank. With that one I controlled it with a RC controller and the receiver attached to the ST. I powered this one from a set of 12v 32ah deep cell batteries. I was amazed how smooth and responsive the robot was when using the ST in RC mode. I'll add a link to a video below of me testing it.

All the other ST's I used I had a Kangaroo X2 connected, I commanded them using Simple Serial from an EZB's Uart port. I used motors with encoders because I needed speed and position control. In all these cases I used AC to DC converters and 2X32 Sabertooths. The 2X32 is the only ST that can run directly from a power supply without having a dump battery connected for the regeneration power the ST backfeeds. This one has a voltage clamp you can set in the software and use a power resistor to absorb the regen voltage. Elegant.

Like you I don't supply voltage to motors or servos through an EZB. The EZB will brown out if the motors pull to much current.

I hope this helps.

Could you tell me what kind of switch you are using between your battery and Sabertooth?

#26  

Dave thats a serious piece of craftsmanship. Here's the Battery Switch.

I may have an idea what Dimesion was meaning, I'm waiting for them to confirm. I think the terminology they used confused me somewhat from the actual issue.

I'm wondering if the internal rail on the board between b- and 0v is somehow current limited maybe in relation to how the BEC works. If that's the case maybe the parallel path to ground resulted in too much current through the BEC side of the circuit?

#27  

User-inserted image

Thought I was on to something with it being caused by the parallel path to ground through the 0v exceeding the current limited for that track of the board.

However the response back has me a little confused. I fail to see how adding a ground loop could increase the potential that the BEC side of the sabertooth would see. If there's resistance on the ground loop would that not increase the potential on the b- rail which would decrease the potential as it would now be sitting above 0v?

Anyone able to explain to me how this could expose it to 24vdc?

#28   — Edited

It sounds to me like they are wanting you to separate the 24v battery neutral from the 5v grounds. Looking at your sketch I don't see how you can do that. I guess I'm not smart enough to see it. That or add a opto isolator on the logic side of the ST.

#29   — Edited

User-inserted image

They are,  I can by removing the top connection shown in the simplified diagram above, the Arduino GRD will be at the same potential as the Sabertooth as the Buck has a pass-through ground its not isolated.

My issue is they are saying that the ground loop can cause the BEC side of the circuit to see 24vdc. I don't see quite how this is possible. I thought the loop could expose the 0v track to a current max that it was not designed for, In my example above it would be half the 25A max current, potentially 12.5 A depending on resistance.

I'm not quite understanding how the loop could cause the logic side to see 24vdc

PRO
Synthiam
#30  

I’m super confused by their message. All grounds need to be connected. The grounds of all power sources. Can you ask to speak with someone more senior there?

#31  

He's back up and running, Connected without the extra cable from Saber ground to the Arduino. New Control settings for max spin work great, I have that tweaked up above the max speed setting and I think now I have the right balance that I feel comfortable with the kids controlling him. Thanks again for all the help.

https://www.youtube.com/shorts/n-6u3uXuWeA

Don't know why but the embed youtube isn't working for me, but here's a video of some moving around in the basement. Now to find the time to program some new actions, just under 2 weeks to go.

PRO
Synthiam
#32  

That's awesome to hear! Unfortunately, youtube shorts don't embed. It's their way of getting people to visit the website rather than be embedded on a 3r party site.

#33  

Nice. The movement looks great. So smooth and responsive.

So, I'm a little at a loss on what you did. It sounds like you did remove a ground wire and things started working. So they were correct? You did have a ground loop.

You say you removed the ground wire between the Sabertooth and Arduino. It's hard to see your schematic you posted above because it's so light. Is this the one:

User-inserted image

#34  

Hi Dave,  yes the wire you highlighted I have removed, but thats unrelated to thr movement.

The smoother movement is down to DJ adding the option for me to increase max speed for spin.

I'm still a little nervous every time I power it on since the other unit work fine for a while before it caught on fire.

I personally don't think the issue is the loop itself but the current that is diverted through that side of the board when the loop is present and that side of th3 board not being designed for that kind of current flow. I would hazard a guess that if both grounds were connected to b- this may not be an issue.

PRO
Synthiam
#35  

So with no common ground, how is voltage referenced? I’m confused how a circuit with no common ground would work because the voltages would be floating

#36  

Hi DJ the common ground reference is there, the 12vdc buck has a pass through ground so it's the same as the Sabers.

So our theory here is that the red dotted line portion of the loop in my simplified ground diagram is not rated for 25 amps. It's the only thing that makes sense. Not an issue if the controller is on a separate power circuit or being power by the saber itself. Speaking to someone else on Facebook they say this is a known issue but not openly explained.

#37   — Edited

User-inserted image

User-inserted image

User-inserted image

We did it!!!!! And we could not have done it without the help from here thanks.

2 days at the con most of the issues we ran into were mechanical in nature. I learned a lot and probably have a good months worth of redesign/testing to do. But there's nothing like having it out in the real world.

Connection issues with VNC, I completely forgot the onboard PC needs an internet connection for the Mobile hotspot to work. First day I had to beg/borrow a monitor/mouse to start up but then I set it to auto connect to my phones hotspot and just VNC in from my phone for start up and pre checks. Worked great.

Dj the options for max speed where awesome!!!! Super usefull depending on were I was in the convention center I could adjust for the surface, carpet and brick needed more power, tile dialed down to same setting as my home. Would have been great to be able to maybe have multiple pre-sets, like Hi/low that you could then be tied to a button or script.

I have about a page worth of upgraded new features to work on adding but overall it went down really well, and the kids loved having him around. Ran into a few people who are thinking of droid builds but are nervous about the control side of things, and where pretty impress with how simple the programing was on Arc. Might see some more ARC droids here in NS.

#38  

This is outstanding! I'm so happy you were able to work out enough bugs to get him working. It looks like it was a fantastic event and you all had a blast. This really makes me smile!

PRO
Synthiam
#39  

Awesome!!! I enjoy hearing success stories - specially when there are so many potential unknowns. But you did spend a lot of time prepping. Good idea about being able to set those values programmatically!