Motion Controller choice - Duet3D or ?

553 views
Skip to first unread message

Clemens Koller

unread,
May 15, 2021, 10:54:40 AM5/15/21
to ope...@googlegroups.com
Hi!

In the previous Thread (Re: [OpenPnP] Need help) people came again to the conclusion that there are some Motion Controllers which are more suitable for OpenPnP than others.
Does it make sense to get some more detailed information in a *compact* form, which motion controller is worth to consider for OpenPnP - or not - what the pro/con reasons are.


* TinyG
default for LitePlacer
Price: USD 129,99
+ cheap(ish)
- some synchronization issues / difficult communication issues.
- not actively maintained by Synthetos


* Smoothieboard
Product: Smoothiebaord 5xc
Price: USD 185,00 (currently in stock)
i counterfeit products in market, which don't work reliably


* Duet3D
Product: Duet 3 Mainboard 6HC, Product Code: Duet3MB6HC
Price: GBP 185,00 (duet3d, currently out of stock)
Price: EUR 259,90 (germany, in stock)
+ well maintained
+ a bit pricy



Regards,

Clemens

ma...@makr.zone

unread,
May 15, 2021, 11:16:11 AM5/15/21
to ope...@googlegroups.com

Hi Clemens,

Current Wiki doc is here:
https://github.com/openpnp/openpnp/wiki/Motion-Controllers#recommended-models

Whether Smoothie should swap places with Duet3D, I don't know. I guess Jason should say. 

From the firmware perspective, I already swapped places:
https://github.com/openpnp/openpnp/wiki/Motion-Controller-Firmwares

You are very welcome to improve the Wiki with e.g. the suggested Pros/Cons there.

The availability and quoted pricing is probably very "moving target", and Wiki pages tend to grow old and stale quick ;-) perhaps better to provide links to product pages/shops, I guess.

> Price: GBP 185,00 (duet3d, currently out of stock)

Well, it says "out of stock" from their shop system, but actually they're just not selling directly at the moment due to Covid-19.


https://www.duet3d.com/GenuineResellers

They are well available in the UK, e.g. here:

https://e3d-online.com/products/duet-3-mainboard-6hc?_pos=1&_sid=5e22625a9&_ss=r
https://ooznest.co.uk/product/duet-3-mainboard-6hc/

_Mark

sebastian...@gmail.com

unread,
May 15, 2021, 11:44:17 AM5/15/21
to OpenPnP
I'll probably go for a Duet 3 Mini 5+ Ethernet.

@Mark did you try the mini as well? I suppose it should work just as fine in terms of OpenPnP compatibility. 

The Duet 3 6HC unfortunately does not provide any step/dir interfaces.
So I would need another 2 1XD expansion boards 52€ each on top of the 260€ Duet 3 6HC to interface ODrive...


Sebastian

ma...@makr.zone

unread,
May 15, 2021, 12:20:43 PM5/15/21
to ope...@googlegroups.com

> @Mark did you try the mini as well? I suppose it should work just as fine in terms of OpenPnP compatibility.

Oh, I heard about if from @dc42 but i haven't actually seen it yet. I haven't personally tried it, but @dc42 specifically mentioned it, when we talked about OpenPnP, so I assume it is perfectly fine. AFAIK they use the same firmware for the whole lineup.

https://www.duet3d.com/Duet3Mini5plus (£99.00)


> The Duet 3 6HC unfortunately does not provide any step/dir interfaces.
> So I would need another 2 1XD expansion boards 52€ each on top of the 260€ Duet 3 6HC to interface ODrive...

I see. With the this little expander you get 2 more axes on the mini:
https://www.duet3d.com/Duet3ExpansionMini2plus (£19.50)

This also almost certainly means you can extract the step/dir on these expansion pins for ODrive instead.


Have you tested the ODrive already?

I was always lurking there, ever since that...

https://www.youtube.com/watch?v=FUh36RUHzdU

...but recently, commercial solutions seemed to become more attractive, even from European suppliers:

https://www.sorotec.de/shop/CNC-Steuerungstechnik/servo-systeme/

_Mark

--
You received this message because you are subscribed to the Google Groups "OpenPnP" group.
To unsubscribe from this group and stop receiving emails from it, send an email to openpnp+u...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/openpnp/ecadff4d-a6c4-4679-aa03-5ab7df76f747n%40googlegroups.com.

sebastian...@gmail.com

unread,
May 15, 2021, 2:18:47 PM5/15/21
to OpenPnP
Mark,

> this also almost certainly means you can extract the step/dir on these expansion pins for ODrive instead.

Yes that's why I chose the Mini 5+. It looks like my perfect match. I have no need for high current drivers anyway.

> Have you tested the ODrive already?

No, it arrived today. But I haven't played with it yet. I'm still sourcing parts for my first build so there is not much to test atm.
Still not sure if I'm going for timing belts or give Igus Dryspin a shot.
But I'll definitely document/share my progress as soon as there are first signs of life in that pile of parts.


> I was always lurking there, ever since that...
> ..but recently, commercial solutions seemed to become more attractive, even from European suppliers:

Same here. I also considered those JMC servos but in the end I preferred the modular solution. That way I can plug and play the controller for various projects.
More importantly there is a very nice community around ODrive.
Oskar Weigl is just a discord message away. I don't think that will work with JMC. I've seen a few videos about their configuration software and it deterred me.

Regards,
Sebastian


betzt...@gmail.com

unread,
May 18, 2021, 2:24:33 PM5/18/21
to OpenPnP
On Saturday, May 15, 2021 at 11:18:47 AM UTC-7 sebastian...@gmail.com wrote:
Mark,

Same here. I also considered those JMC servos but in the end I preferred the modular solution. That way I can plug and play the controller for various projects.
More importantly there is a very nice community around ODrive.
Oskar Weigl is just a discord message away. I don't think that will work with JMC. I've seen a few videos about their configuration software and it deterred me.

Regards,
Sebastian

I can confirm that you chose correctly. I ordered some of the JMC servos (closed loop steppers) and I had nothing but trouble trying to tune them. I am removing them and just putting on normal steppers now. If I want to go to closed loop I will buy the leadshine integrated closed loop steppers.

Peter. 

ma...@makr.zone

unread,
May 18, 2021, 2:37:36 PM5/18/21
to ope...@googlegroups.com

There are two model lines: true servos and just closed-loop steppers. Though I guess the servos will even be harder to tune... :-(

https://www.sorotec.de/shop/CNC-Controls/servo-systems/

https://www.sorotec.de/shop/CNC-Controls/Closed-loop-Systeme/jmc-closed-loop-systems/

_Mark

--
You received this message because you are subscribed to the Google Groups "OpenPnP" group.
To unsubscribe from this group and stop receiving emails from it, send an email to openpnp+u...@googlegroups.com.

Christian Kuhtz

unread,
May 18, 2021, 5:40:31 PM5/18/21
to ope...@googlegroups.com
I have a couple of ODrives and two motors (currently) sitting here on my bench. Plan is to use one ODrive for two motors on Y and another for a single X motor. I’m wondering if the better path isn’t to go and directly integrate ODrive rather than go through the stepper path.  Challenge for me is my Java foo hasn’t been exercised in eons and I wonder how hard this is to pull off.

The motion control in ODrive has come a long way. What I need motion control for is controlling the heads.

I’ve also been looking at the Igus gear (particularly the high helix) btw. 

Best regards,
Christian

ma...@makr.zone

unread,
May 19, 2021, 2:42:37 AM5/19/21
to ope...@googlegroups.com

Not sure I understand exactly what you mean, but you won't likely need "Java foo". OpenPnP will never directly drive a motor, be it a stepper or servo. OpenPnP/Java is not operating in real-time, but driving a motor always requires a real-time controlling entity. You always need a controller (sometimes two) between OpenPnP and the motor one way or other.

What I heard about ODrive so far, I guess there are two options:

  1. Use a normal motion controller like Duet or Smoothieware to coordinate motion, then use step/dir signals to the Odrive controller/driver which in turn drives the servo.
  2. Talk directly to Odrive from OpenPnP using Trajectory control. Despite its name, OpenPnP's GcodeDriver can drive any text line/decimal coordinate based protocol. It does not need to be G-code. So the trajectory control commands seem not to be a problem (at first sight).
Not so sure about setting limits:
<odrv>.<axis>.trap_traj.config.vel_limit = <Float>
<odrv>.<axis>.trap_traj.config.vel_limit = <Float>
<odrv>.<axis>.trap_traj.config.accel_limit = <Float>
<odrv>.<axis>.trap_traj.config.decel_limit = <Float>

Those come in driver units e.g. mm/s, mm/s-2 etc. and/or mm/min from OpenPnP but the unit in ODrive seems to be "turns"(?), i.e. I'm not sure you can drive those reasonably from OpenPnP.

Also not sure about axis coordination (may not be important for PnP), position reporting, position resetting, and how to wait for a move to complete. See here for a list of needed capabilities:

https://github.com/openpnp/openpnp/wiki/Motion-Controller-Firmwares#key-features

This has to be provided by the controller one way or other. So if in doubt, go for option 1.

But having said all that: I'm not sure if Odrive is even further along today:

https://discourse.odriverobotics.com/t/gcode-interpreter/83/25

https://github.com/odriverobotics/ODrive/issues/45

_Mark

Reply all
Reply to author
Forward
0 new messages