Duet 3 Main Board 6XDs Connected through Ethernet Network
-
Hi everyone,
I'm considering building a large Cartesian 4-axis (XYZA) CNC machine designed for cutting large aluminum panels as well as for tangential knife cutting on vinyl and foam sheets. For this project, I'm exploring the possibility of connecting 3–6 Duet 3 Main Board 6XDs (or similar boards) that can control large servo motors (such as Nema 34 with built-in drivers).
While I've seen potential applications using CAN bus through the Duet 3 Tool Distribution Board in combination with a Duet 3 Expansion Board 1XD at each motor connection, I'd actually prefer to use an Ethernet connection instead of CAN bus. Since I already need to run network cables for some PLCs, using the same Ethernet cabling for the CNC system would be ideal—even if it comes at a higher cost, the convenience is worth it.
Any thoughts or experiences with a similar setup would be greatly appreciated.
-
@maximyz3d you won't be able to sync them and use them all together.
your only choice is CAN-FD.
What is the maximum cable run length you would be looking at? -
@jay_s_uk Noted thanks for the feedback. It should work my max cable run is looking to be 75 -100 FT.
Also is there any functionality for ladder logic or interfacing with a plc through Modbus TCP? Currently have a bunch of read write registers from our plcs on our current machine and would like to have them communicate to this control board instead.
-
@maximyz3d RS485 support has been added in 3.6 (still in beta) so you can use that to read/write registers.
Otherwise you've got UART, MQTT or HTTP -
@jay_s_uk, I'll definitely check it out—it seems like this could be a valid solution for my motion system.
A little off-topic, but my last question is about the software. Have you experimented with customizations? How developer-friendly is the Duet web control? I'm particularly interested in creating a custom pop-up window for a DRO, similar to what most CNC GUIs offer. Essentially, I'm looking for a real-time readout of the current G-code line the machine is executing, with the ability to select any line as a starting point. Any insights would be appreciated.
-
@maximyz3d DWC is programmed in VUE.
There are some guides on creating plugins. Never tried it myself though -
@maximyz3d You may be able to do some simple UI stuff with the DWC plug in BtnCmd https://github.com/MintyTrebor/BtnCmd
Note that for a DRO the machine position is not "live", it is updated in the Object Model every 250ms. If you're connecting over a network, there is also the latency of the network.
Ian
-
@droftarts Yes thank you for bringing that up to my attention great point on the latency I'll keep it in mind. For our application we are on the same gcode line for extended period of time (Long and slow runs) so even with latency it should still be useful to me. I will investigate and read all the documentation thanks for the links.
-
For our application we are on the same gcode line for extended period of time (Long and slow runs)
You will want to enable segmentation of long moves, which splits them up into shorter moves, and means the move is interruptible. See the general CNC guide for configuration that may be applicable to your setup: https://docs.duet3d.com/en/User_manual/Machine_configuration/Configuration_CNC
There is a limit on the number of steps a move can be, which may be relevant. I think it is 2^32 steps (@dc42 ?). It’s possible to hit this on a long or rotating axis that has a high number of steps per mm.
Ian