kslaxme
India
Asked
I am using a Leadshine Microstep Drive DM542 stepper motor controller connected to a NEMA 23 2-phase stepper motor. I followed the same wiring connections as specified in the documentation.
Here are the images of my setup for reference:
When I tried to ping the motor using the Stepper servo robot skill in Synthiam ARC, I did not receive a response. I followed the instructions and configured everything as directed. However, the motor is continuously moving back and forth in very minute steps. Could someone help me understand where I might have gone wrong? Additionally, how can I configure the stepper motor to function like a servo motor?
Related Hardware Arduino Genuino Uno
Related Control
Inverse Kinematic Arm
It sounds like there might be a few issues with the setup that need to be addressed to get your stepper motor working correctly as a servo. Let's go through some troubleshooting steps to identify and resolve the problem:
Check Wiring Connections:
Arduino Firmware Configuration:
BUS_ID
in the firmware matches the virtual servo port you are using in ARC (e.g.,BUS_ID 1
forV1
).Arduino Programming:
Common Ground:
Ping Test:
Stepper Motor Behavior:
Control Commands:
Servo.setPosition()
command in ARC to move the stepper motor to a specific position. For example:Calibration and Homing:
Calibrate
ControlCommand() to set the home position:Driver Specifications:
If you've gone through these steps and the issue persists, please provide more details about the specific stepper motor driver and any error messages you might be receiving. This will help in diagnosing the problem further.
I am a customer support GPT-powered AI and still learning. If you have doubts about my response, please use the support documentation to verify my answer.
For future reference, Athena cannot see screenshots. Considering you are using a screenshot of code, you should copy and paste it. When pasting, you can paste with the CODE tags. The tag manual for formatting code and text is here: https://synthiam.com/Support/website-features/forum-editor
Regarding your question, I can see your images because I am a human. The product you are using is a Microstep DM542.
The wiring schematic you posted is useful; thank you. However, the PUL- and DIR- are both connected to the battery's GND. In addition, your ENA+ and ENA- are not connected to anything. Check the product manual and see if that is how it's meant to be connectedbecause it doesn't seem right to us.
@Athena do you have any information on the DM542 for wiring to a NEMA23 2-ph stepper motor using the stepper motor robot skill? Thanks
While I don't have specific information on the DM542 stepper driver, I can provide general guidance on wiring a stepper motor driver to a microcontroller like an Arduino, which can be used with the Synthiam ARC platform. Here's a typical setup for wiring a stepper motor driver like the DM542 to a microcontroller:
Power Supply:
Stepper Motor Connections:
Microcontroller Connections:
Common Ground:
Microstepping and Current Settings:
Programming:
Testing:
If you have specific questions about the DM542 or encounter issues, please provide more details, and I'll be happy to assist further.
I am a customer support GPT-powered AI and still learning. If you have doubts about my response, please use the support documentation to verify my answer.
Hi Team, Stepper Motor issue is not fixed i checked my connection, have connected DIR to 3 and STEP (PUL) pin to 2 in arduino uno, and i uploaded the stepper servo firmware to uno , uno connected to pc via usb, selected the port and DTR Enabaled and selected the BUS ID #1 => V1 in stepper servo skill configuration. log its showing connected to COM7(DTR: True). when i treid to ping V1 it is showing Port V1 unresponsive! . when i tried to run simple movement program in arduino ide its working fine.
If the ping command is not response, the Arduino with the firmware is not configured correctly. Focus on ensuring the following...
The information for those 3 steps is in the stepper motor robot skill manual page, here: https://synthiam.com/Support/Skills/Servo/Stepper-Servo?id=21134
I’d suggesting posting the configuration section of the code you modified from the firmware file. Your screenshots are not enough of the code.
you can copy and paste text. But when you paste it here, make sure you put it in the CODE tags with the editor. Otherwise it won’t format correctly.
@Athena stepper motor moves in only one direction when data reduced from 180 to 1 in Horizontal servo skill. how to make it to move in both direction
Let's address your questions and issues one by one.
Setting Home for V21
To set the home position for a stepper motor connected to virtual port V21, you can use the
SetAsHome
ControlCommand() in JavaScript. Here's an example:Calibrating V22
To calibrate a stepper motor connected to virtual port V22, you can use the
Calibrate
control command. Here's how you can do it in JavaScript:Stepper Motor Calibration Speed Issue
Regarding the calibration speed issue, it seems like the stepper motor is moving slower than expected during calibration. The speed during calibration might be controlled by the firmware or the configuration settings in the Arduino code. You might want to check the Arduino firmware to see if there's a parameter that controls the calibration speed. If you have access to the Arduino code, look for any settings related to stepper speed during calibration and adjust them accordingly.
Stepper Motor Movement in Both Directions
If your stepper motor is only moving in one direction when using the Horizontal servo skill, you might need to check the configuration of your stepper motor driver and the Arduino firmware. Here are a few things to consider:
Check Wiring: Ensure that the wiring between the Arduino and the stepper motor driver is correct. Incorrect wiring can cause the motor to move in only one direction.
Driver Configuration: Some stepper motor drivers have settings for direction control. Make sure the direction control pin is correctly connected and configured.
Arduino Firmware: Verify that the Arduino firmware is correctly set up to handle direction changes. Look for any settings or code that might affect the direction control.
ARC Configuration: Ensure that the ARC configuration for the stepper motor is set up to allow movement in both directions. Check the settings in the Stepper servo skill to ensure that the virtual servo ports are correctly mapped.
If you continue to experience issues, you might want to review the documentation for your stepper motor driver and the Arduino firmware to ensure everything is set up correctly. If you have any specific questions or need further assistance, feel free to ask!
I am a customer support GPT-powered AI and still learning. If you have doubts about my response, please use the support documentation to verify my answer.
Check the wiring because it’s not correct if that’s happening.
also do no hijack anymore threads or you will have forum access revoked. This is your last warning. Use your existing threads for the same topics.
This is for kslaxme- stepper motors are a whole different animal than typical servos. They start at 1 and go to whatever you want. Say you make top end one thousand steps you start at one , go to 1000, if you go to 500 that is your center point. There are all kinds of learning curves with this one.
This is for kslaxme- your min starts at 100 and max at 150. This is totally different from servos -we are talking about pulses pulses pulses At a minimum it's 400 pulses to make one revolution on your driver so if you go from 100 to 150 its 50 pulses 1/8 of a turn you won't see it even if it happened.