Camera Dolly steering


#1

I am a new user with this kit so forgive any errors. I have only built a few things. My question is how do I program the Camera Dolly to steer as it will always start with a random steering angle. Is there any way to start with the Dolly straight. Without this facility there is no way to program any further movement.


#2

Hi alanbyvale,
You can use Makeblock app to control it.
Please make sure your robot is running at default program so it can be connected to the Makeblock app.



Thanks.


#3

Yes I know I can use the app but the whole point of buying the kit was the ability to program the kit using drag and drop and then coding. What I want to know is how to program the dolly to drive forward in a straight line.


#4

Hi alanbyvale,
If you want to code by yourself, please use mBlock5 software.
https://www.mblock.cc/en-us/download
To code it drive foward, you just need to code for motor B which connected to port 2.


image
Thanks.


#5

Yes I have the software and can make the rig drive forwards but I cannot do that until I know the steering is pointing straight forward. I can see no way of doing this.


#6

Hi alanbyvale,
Sorry I have not ever assembled Camera Dolly so I can’t test.
So it will go forward or backward when you upload the block I mentioned?
If you need it to run to opposite direction, please add a minus behind the number.
image
By the way, here is the Makeblock Library for customers.
You can check the firmware for Ranger.


http://learn.makeblock.com/cn/Makeblock-library-for-Arduino/files.html
Thanks.


#7

Forward and backward are fine. The problem is steering with one motor controlling the steering. There is no way to set the axle to be straight when the program starts.


#8

With encoder motors, you will never know the absolute angle from starting up, it will always calculate a relative angle. What you can do, is change the angle of Motor A, little by little until you see it goes straight. Then if you turn it off and turn it back on, it will consider that angle to be 0 angle. Your job is then to make sure that after you’ve played around and steered the dolly, you always change back the steering angle to 0 angle before turning the robot off, so it will know the zero angle next time too.

Even then, it will probably fail to count a few angles here and there, so you will need to recalibrate it from time to time.

Hope it helped! :slight_smile:


#9

Makeblock assumes you’re driving the device with a remote control, so ‘straight’ is achieved via eyeballing it. rdhelli’s advice is excellent. Encoder motors can understand relative movement but not angle.

The only reliable way to get your robot to understand ‘straight’ would be some kind of limit switch, or perhaps you could rig up something using the line follower module and a contrasting dot on the gear or axle to detect centre


#10

Thank you for your replies.
Rdhelli - This is sort of what I expected. I will have to investigate using a different propulsion method (tracked maybe) that defaults to straight on startup.
MuyrrayElliott - I agree that further sensors would be the way to go to achieve straight lines. I don’t agree with your view that Makeblock assume the sole use of a remote control as their advertising and youtube content make a lot of the mblock software to code which is one reason I bought the kit. So far I have found the construction quality to be reasonable but the coding information sadly lacking. Makeblock have responded by saying that they are aware of this and hope to supply more information in a few weeks.


#11

Hi Alan
I didn’t mean to imply that all designs were meant to be remote-controlled, but some (like a single axis steering motor with no feedback sensor) are always going to be less useful in full-autonomous mode. The product is well designed and extremely flexible but the documentation is definitely lacking, which is why I ended up writing my own Arduino coding manual for my ranger - just to make sense of it all in the absence of clear instruction. Good luck, let us know what support come back to you with in terms of options


#12

Encoders don’t know where they are at startup they only count how they have moved since startup. You will see any CNC machine when it starts up moves until it hits a limit switch then resets the encoders(or steppers) to start counting from there.

Servos use a potentiometer to know where they are. So another solution might be is to use a servo for steering


#13

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.