You can read more about this and other Esmacat tutorials on the official Esmacat website. You can also learn more about us on our main website.

Detailed documentation of the codes and steps for this tutorial can be found here.

Check out our EASE Crowd Supply Campaign Page: https://www.crowdsupply.com/harmonic-bionics/ease

Overview:

In this tutorial, you will learn how to set up and use the EtherCAT Arduino Shield by Esmacat (EASE) Slave device on top of an Arduino subsystem and interface it with a Touch LCD and Motor Shield to enable data transfer between the two slave devices via the EtherCAT master (Laptop/PC).

  • First, some general information about the shields is discussed.
  • After learning to set up the devices, you will learn to implement a practical project involving both the Touch LCD and Motor Shields to control the Motors connected via the buttons on the LCD Shield by exchanging data between the 2 slave devices and the EtherCAT master. The data about the current motor to be controlled and its state (speed/position) is also printed on the terminal of the master.

EtherCAT Arduino Shield by Esmacat (EASE):

EASE is an EtherCAT slave that connects to an EtherCAT master (PC/ Laptop/ Dedicated Master devices like the Esmacat Master S and Esmacat Master C.) It can be stacked on top of Arduino and other MCU boards capable of connecting a shield with an Arduino Uno form factor. This shield allows high-speed communication with an industry-standard EtherCAT protocol for high-performance robotic applications.





This shield has 8 registers that can be used to send/receive data between devices via Ethernet cables attached to the shield.
More info: https://www.esmacat.com/ease
Suggested Reading: EASE Datasheet.

Touch LCD Shield:

Display screens can be of very simple types such as 7 Segment or character LCDs or more advanced models like OLEDs and TFT LCDs. 2.4” TFT (Thin film Transistor) shield is one of the most widely used graphic screens with "Touch" input. Here are its most important features:
  • 240*320 pixels resolution
  • Ability to display 262000 different colors
  • Includes a touchpad
  • 5v supply voltage
Touch LCD.png
Suggested Reference: Absolute Beginner’s Guide to TFT LCD Displays by Arduino In order to use the Touch Shield, 3 libraries are required to be added to the Arduino IDE, 1)Adafruit-GFZ-Library. (Adafruit Graphics Library) 2)TFTLCD-Library. 3)Adafruit-TouchScreen Library. Download the above files and add them to the Libraries folder of Arduino IDE. Note: The Touch LCD values must be calibrated before using and must be updated in the Arduino code (comments provided) for accurate touch control.

Motor Shield:

The Adafruit Motor Shield is a stackable motor shield that allows up to a maximum of 2 Servo motors, 4 DC motors or 2 Stepper Motors to be controlled using a single shield. By configuring the shield for our requirement one can control the motors as per the need. In this tutorial 1 servo motor, 1 dc motor and 1 stepper motor has been controlled as a proof of concept.
Suggested Reference: Adafruit Motor Shield V2 datasheet.

Hardware Connections:

The primary hardware components include,
  • EtherCAT slave1 (EASE with Arduino)
  • EtherCAT slave2 (EASE with Arduino)
  • EtherCAT Master (PC/Laptop)
  • Power Over Ethernet (POE Injector)
  • Motor Shield
  • Touch LCD Shield
  • Motors
  • Ethernet cables
  • DC Adapter (for POE) and
  • Power Source (battery to power the motors)
Since EASE uses a POE injector, there is no need to power the Arduino boards separately. EASE can power the baseboard through EtherCAT! The connections are as shown in the two schematics attached in the start of this tutorial. "The Hardware setup schematic" gives an overview of the connections to be made while the "Physical connection schematic" shows the setup once all the connections are made. Note: Make sure the Ethernet connections are fitting tightly into the sockets. (Loose connections may lead to the slave device not being recognized.)

Required Libraries: ...

Read more »