Help with sliding rail

I have had my sliding rail for several months now, and I’m still not able to use it. The Instructions on manual.rotrics don’t work, It won’t like me set the width wide enough. It’s been saying for over 6 months now that there is an update coming in October. Obviously that hasn’t happened, and the page hasn’t even been updated. When will there be an update to the studio? And how can I get the sliding rail to work?

It doesn’t look like the company is of any help in these forums. I was able to get it to work only through manual coding -> and that in itself took some figuring out. You need to do the following:

  1. Download Visual Studio Code, i am a Windows user
  2. Install Python 3.9, make sure you choose to install PIP and set the path variable during setup, choose custom installation options.
  3. Once the installation is done, install the pyserial module, on a command prompt run -> pip install pyserial
  4. once that is in place go and clone the manufacturer’s API Sample project at https://github.com/Rotrics-Dev/DexArm_API
  5. Open this as a folder in Visual Studio Code, it’ll prompt you for Python tools and Linter, install those extensions.
  6. In the pydexarm folder, go to example.py and change the port to whatever you see for the port number in your computer, in my PC I get COM3, yours could be different
  7. WARNING, if your dexarm is sitting on the rail before you do the next few things, you force the platform to the end of rail by the example they provide. They put 2000 for the forward command which keeps pushing the platform off the rail and causes grind noises coming from the thing, set that to something lower like 20.

so your code to test should look like below:

dexarm = Dexarm(port=“COM3”)
dexarm.go_home()
dexarm.move_to(50, 300, 0)
dexarm.move_to(50, 300, -50)
dexarm.air_picker_pick()
dexarm.move_to(50, 300, 0)
dexarm.move_to(-50, 300, 0)
dexarm.move_to(-50, 300, -50)
dexarm.air_picker_place()
dexarm.go_home()
dexarm.conveyor_belt_forward(20)
time.sleep(1)
dexarm.conveyor_belt_backward(20)
time.sleep(1)
dexarm.conveyor_belt_stop()

The API python script is not fully developed it seems and I doubt it ever will. Best chance we’ll probably get is if the users develop something more advanced out of the GCode commands you can send to this device. Any questions let me know…

1 Like

Some new information the parameter on the belt forward command is not actually distance, it turns that is the speed at which the belt will move. So for example a value like 2000 basically move at that speed. Then you control the distance with the time.sleep(1) function. So for example the below:

dexarm.conveyor_belt_forward(200)
timer.sleep(1)

will move the belt at a speed of 200 whatever that is a unit of and then do that for 1 second. So playing around with speed I think 3000 is like max speed, after that the belt starts slipping and starts making awful noises.

@Jeff_Rotrics Looks like the replies were turned off in the announcement, so I’ll ask my follow up question over here. I was able to get the sliding rail to move in the control page. Somehow I missed that those two arrows next to the Step Length are for movement, seems obvious now. Thanks for that. The update also mentioned an option for disabling the physical limits, but I can’t find that. Also, once we disable the physical limits, do we still have to go through the hoops of exporting the G code and change the X movements to E movements? It’d be really great to have a config option to just simply enable the rail to replace the X movements.

Good to know that you can control the sliding rail on Rotrics Studio.

The physical limit function is scheduled in the next version which should be released in mid-May. Yes, we also need to change the X movements to E movements after disable the physical limits. Sorry, we don’t have that configuration for the current version. Thanks for your feedback, we will consider implementing that feature in the future version.