-
Notifications
You must be signed in to change notification settings - Fork 7
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Fine-tune stepper drivers #13
Comments
What we are using is probably not the best setup for the robotic arm design we are going for. Overheating problems and pulse on high currentFrom a RepRap forum post:
The video is not available anymore, but we have the same behaviour.
Also, about the heat sinks:
The effect of the small heat sink is debatable. How to properly compute VrefVref refers to the voltage value that can be regulated through the small potentiometer on some drivers (e.g., A4988, DRV8825). In order to set the value correctly you need to take into account a couple of parameters:
Once you have all the necessary info you need to refer to the driver datasheet. Consider this datasheet for A4988. \begin{equation} where Example: Assuming we have a rated current of 2.8A (e.g., from our NEMA 23) and a current sense resistor of 100mΩ we get \begin{equation} Note: this voltage value might not be compatible with the driver. Similarly consider this datasheet for DRV8825. \begin{equation} Example: Similarly, assuming we have a rated current of 2.8A and a current sense resistor of 100mΩ we get \begin{equation} This is more or less what we observed during our experiments. Motor drivers used in the MoveoArmAccording to this infamous picture and the building manual, the MoveoArm uses the TB6560 motor drivers. According to the pictures in this datasheet, all the information necessary to setup the driver and limit the current flowing in the motor is reported in the silk screen. Shoulder motorsThe shoulder of the arm (at the base) is powered by two NEMA 23. IMPORTANT: this is not possible! The solution is to use two drivers, put in parallel with the motors. TB6560 setupFirst of all, the driver needs to be set up using the dip switches on the board. Example: In order to provide the correct rated current (let's say we are aiming for 2.8A, the rated current for our NEMA 23), we can set the driver to provide 3A. Keep in mind the terminology:
Finally, have a look at the picture to connect the driver to a RAMPS 1.4. Arduino codeWe should be able to use the code we have been using so far. Enable pin still needs to be set to |
The drivers have been installed according to the instructions above. There is a mistake in the wiring diagram, where the driver is connected to the same potential on the power supply, resulting in no voltage across it (the supply we are using is a slightly different model, I'll add a picture once I get my hands on it again). We set the output current to 3A and the stop current to 50%. There hasn't been enough time to test the new drivers thoroughly, but there are a few observations from those I managed to run:
In the extended position, the arm behaves inconsistently, usually managing to raise or lower itself, but plunges as soon as it stops with the characteristic sound of overloaded stepper motors. |
At the time of writing, some of the stepper motors don't seem to be able to support the weight of the arm. This might be due to the fact that we are not providing enough current to the motors by setting the limit too low on the driver.
Experiment with this.
The text was updated successfully, but these errors were encountered: