Guidance Requested

Hi all, first let me ask for you to excuse what is potentially an annoying newbie question. I have used Arduino, Maestro etc before (many years ago) for various hobby applications, but find myself now faced with a more complex task. I would like to ask for guidance as to the appropriate hardware to use (which may possibly not be Arduino, but my limited knowledge is around Arduino so hopefully it is).

I need to control 5 linear motors and 2 stepper motors. They are to follow set sequences when commanded from a remote PC; the sequencing etc I’m fine with.

The remote platform also carries 2x 1080 cameras, feeds for which are needed on the PC; I understand that this is outside of the Arduino capacity, but I think should be fine via Ethernet.

I need a communicate with the remote platform via Ethernet; it is up to 50m underwater, RF/USB is not an option. Being able to control and view from a remote station via the web would be advantageous, but this can be done via a team-viewer connection to the local PC if required.

Given the above, I would welcome suggestions of the appropriate hardware to use. From there I will dive into the software.

Many thanks

2,160 cameras? :wink:

This could require 14 pins. 2 for each linear motor and 2 for each stepper motor, depending on the driver boards/chips used. Most Arduino models have this many.

Most Arduino do not have Ethernet. However, add-on Ethernet modules or shields are available for most models. But these modules take up some Arduino pins, so you need to check that you will have 14 remaining pins available. On most Arduino models, the analog input pins can also be used as digital output pins.

This sounds like something almost any model of Arduino can handle.

Hmmm... 50m is a long way down! :wink:

a Mega with an Ethernet shield??

Thanks guys, much appreciated.

Do you think that I’m best sticking with Arduino/ethernet shield, or perhaps should be considering RPI?

It has been a little further complicated today, as due to distances above the surface I realistically need to communicate via optic fibre, but Ethernet-fibre adapters are easily available.

the Ethernet shield plugs solidly on top of the Mega removing the need for jumper wires which are a source of poor contacts and intermittent problems - also the Mega has plenty of digitial IO to support your sensors/relays etc
there are industrial versions of the Mega/Ethernet but at a cost
I have used RPC (remote procedure call) but am not sure what RPI is?

A Raspberry Pi. Possibly with an external Arduino (with motor drivers, etc) for real-time control if needed.

1 Like

Thanks guys.

May I ask what capability the Arduino combined with a Raspberry Pi would offer? There’s always a PC at the other end of the (fibre optic) network cable.

Anything networking-related is likely far easier with a Pi than with an Arduino/Ethernet shield. It's intrinsic to the Linux OS and you have a variety of languages that can be used.

You can also do stepper/linear motor control from the Pi, but depending on your requirements (speed/responsiveness, etc.), you may need to offload the real time aspects of control to an arduino and communicate with it via a serial connection between Pi and arduino.

if you are considering using a RPi remember it uses 3.3V logic
if interfacing modules which use 5V logic use level converters or potential dividers
when using RPi modules I tend to use HATs which contain any level converters onboard - also reduces the needs for interconnecting wires which are a source of poor connections

1 Like

Thank you. Could you tell me the limitations of using the Ethernet shield on the Arduino?

On my desk I now have a RPi5, various Arduino and an Ethernet shield…

compare the technical specifications ethernet-shield-rev2 and raspberry-pi-5., e.g. Ethernet shield speed 10/100Mbps RPi 5 has Gigabit Ethernet

however, how much data do you wish to transfer? e.g. how many Mbytes and how fast?

think I would use the Mega + ethernet shield - probably easier to interface sensors/motors/relays etc than the RPi
if RPi what language would you use? I tend to use Java but alternatives are C++, Python, etc

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.