M5Stack 6060-PUSH

M5Stack 6060-PUSH Linear Motion Control Module

Manual de usuario

1. Introdución

The M5Stack 6060-PUSH is a versatile motion control module designed for precise linear movement within the M5Stack structural system. It integrates a high-precision stepper motor, a Mega328 microprocessor running GRBL firmware, and a robust 1515 aluminum profile frame. This module facilitates accurate displacement control through RS485 serial bus communication, making it ideal for various automation tasks.

2. Características

  • Integrated Microprocessor: Built-in Mega328 with GRBL firmware for motion control.
  • Comunicación: RS485 serial bus for reliable data exchange.
  • Construción: Durable 1515 aluminum profile cadro.
  • Tipo de motor: 48 stepper motor, two-phase, four-wire system.
  • Trazo: 57mm effective linear travel.
  • Vol. De entradatage: Wide operating range of 12-24V.
  • Potencia do motor: 10 W.
  • Personalizable: Body length and effective stroke can be adapted for specific applications.

3. Contido do paquete

  • 1x M5Stack 6060-PUSH Linear Motion Control Module

4. Aplicacións

  • Impresión 3D
  • Linear Motion Control Systems
  • Automated Positioning
  • Robótica

5. Configuración

5.1 Máis compoñenteview

Familiarize yourself with the main components of the 6060-PUSH module:

M5Stack 6060-PUSH Linear Module overview
Figure 1: M5Stack 6060-PUSH Linear Module with labeled components. Key features include the stepper motor, 1515 aluminum profile, M4 mounting holes, RS485 + 12-24V power input, and the internal Mega328 with GRBL firmware.

5.2 Conexión física

The module requires a 12-24V power supply and RS485 communication for control. Use the designated terminal block for connections.

M5Stack 6060-PUSH connected to PLC BASE
Figura 2: Example connection of the 6060-PUSH module to a PLC BASE, showing the RS485 and power input.

Power and RS485: Connect your 12-24V power supply and RS485 communication lines to the terminal block labeled 'RS485 + POWER 12-24V'. Ensure correct polarity for power.

Montaxe: The module features M4 holes for secure mounting to your desired structure or platform.

5.3 Initial Configuration (Device ID)

Before operation, you may need to set or verify the module's device ID. This is typically done via RS485 commands. For example, to set the ID to '123', you would send the command ID=123\r\n.

6. Instrucións de funcionamento

The 6060-PUSH module is controlled using specific GRBL-like commands sent over the RS485 interface. These commands allow for checking device status, setting parameters, and controlling linear motion.

6.1 GRBL Command Reference

Below is a list of common commands and their functions:

ComandoDescriciónExample
Check IDRequests the current device ID.ID\r\n (returns ???\r\n)
Establecer o ID do dispositivoSets a new device ID. Replace '???' with desired ID.ID=???\r\n
Move (Absolute)Moves the motor to an absolute position. Replace '???' with ID, '???.?' with position.ID???:X???.?\r\n
Read PositionReads the current position of the motor.ID???P\r\n
Find ZeroInitiates homing sequence to find the origin.ID???Z\r\n
Set Feed SpeedSets the movement speed. Replace '????' with speed value.ID???:F????\r\n
Read Busy StatusChecks if the motor is currently busy.ID???I\r\n

Nota: \r\n represents carriage return and newline characters, which are typically required at the end of each command.

6.2 Arduino Example (Conceptual)

The following Arduino code snippet illustrates how to interact with the 6060-PUSH module using an M5Stack device. This example assumes an M5Stack with a display and buttons for interaction.

#include <M5Stack.h>
#define RX_PIN 16
#define TX_PIN 17

// ... (other definitions)

int distance = 0; // Stepper motor movement step value

// ... (header function)

void setup() {
M5.begin();
M5.Power.begin();

header("PUSH 6060", TFT_BLACK);
M5.Lcd.setTextFont(2);
M5.Lcd.setTextColor(TFT_WHITE, TFT_BLACK);
Serial2.begin(9600, SERIAL_8N1, RX_PIN, TX_PIN); // Configure Serial2
delay(500);
Serial2.print("ID=123\r\n"); // Serial2 outputs ID=123\r\n, configuring 6060 motor ID to 123
}


void loop() {
if(M5.BtnA.wasPressed()){ // Button A pressed, send ID\r\n to check 6060 motor ID
Serial2.print("ID\r\n");
}
if(M5.BtnB.wasPressed()){ // Button B pressed, send ID123:X%d\r\n to control absolute movement, where %d is the variable distance
if(distance < 50){
distance +=10;
Serial2.printf("ID123:X%d\r\n",distance);
}
}
if(M5.BtnC.wasPressed()){ // Button C pressed, send ID123Z\r\n to return motor to origin
Serial2.print("ID123Z\r\n");
}
if(Serial2.available()){ // Serial2 receives messages from 6060 and prints them
char c = Serial2.read();
Serial.print(c);
}
M5.update();
}

This code demonstrates:

  • Initializing Serial2 for RS485 communication (RX_PIN 16, TX_PIN 17).
  • Setting the module's ID (e.g., to 123).
  • Sending commands to check ID, move to an absolute position, and return to origin based on button presses.
  • Reading and printing responses from the module.

7. Mantemento

To ensure the longevity and optimal performance of your 6060-PUSH module, consider the following maintenance tips:

  • Manter limpo: Regularly clean the aluminum profile and moving parts to prevent dust and debris accumulation, which can affect smooth operation.
  • Comproba as conexións: Periodically inspect all electrical connections (power and RS485) to ensure they are secure and free from corrosion.
  • Lubricación: If the linear guide mechanism shows signs of friction or noise, apply a small amount of appropriate lubricant as recommended for linear bearings.
  • Condicións ambientais: Operate the module within its specified environmental conditions (temperature, humidity) to prevent damage.

8 Solución de problemas

If you encounter issues with your 6060-PUSH module, try the following troubleshooting steps:

  • Sen movemento:
    • Verify the 12-24V power supply is correctly connected and providing adequate power.
    • Check RS485 communication lines for correct wiring and continuity.
    • Ensure the correct device ID is being used in your commands.
    • Confirm that the commands are correctly formatted, including the \r\n rescisión.
  • Movemento errático:
    • Check for mechanical obstructions on the linear guide.
    • Asegúrese de que a fonte de alimentación sexa estable e non flutuante.
    • Verify the baud rate and other serial parameters (e.g., 9600, SERIAL_8N1) match between your controller and the module.
  • No Response to Commands:
    • Confirm the RS485 transceiver is functioning correctly on both ends.
    • Use a serial monitor to check if commands are being sent and received as expected.
    • Ensure the module's ID is known and correctly addressed.

9. Especificacións

EspecificaciónParámetro
Nome da marcaM5Stack
Número de modeloK028 (6060-PUSH)
OrixeChina continental
Peso neto569.0 g
Peso bruto569.0 g
Tamaño do produto166 x 60 x 60 mm
Tamaño do paquete166 x 60 x 60 mm
Ictus57 mm
Vol. De entradatage12-24 V
Potencia do motor10 W
Batería incluídaNon
Produto químico moi preocupanteNingún
M5Stack 6060-PUSH Specifications Table
Figure 3: Detailed specifications table for the 6060-PUSH module.

10. Consellos de usuario

  • Explore GRBL: The module utilizes GRBL firmware. Familiarizing yourself with standard GRBL commands and functionalities can unlock more advanced control options.
  • Firmware personalizado: For highly specialized applications, consider exploring custom firmware modifications for the Mega328 to tailor the module's behavior precisely.
  • RS485 Network: When using multiple 6060-PUSH modules, ensure each has a unique device ID to prevent communication conflicts on the RS485 bus.

11. Garantía e soporte

For warranty information, technical support, or further assistance, please contact the official M5Stack support channels or the retailer from whom you purchased the product. Keep your purchase receipt for any warranty claims.

Documentos relacionados - 6060-EMPUXE

Preview M5 STACK STAMPFolla de datos e especificacións técnicas de S3
Explora a rúa M5STACKAMPPlaca de desenvolvemento S3, que inclúe o chip ESP32-S3 con Wi-Fi e Bluetooth 5 (LE). Esta folla de datos detalla a súa composición de hardware, as descricións dos pines, as capacidades funcionais e as características eléctricas para proxectos de IoT.
Preview M5STACK Stam PLC: Manual do usuario do controlador IoT industrial
Explora o PLC Stam M5STACK, un controlador lóxico programable de IoT para automatización industrial. Esta guía detalla as súas características, especificacións, configuración rápida con Arduino IDE e cumprimento da normativa FCC. Ideal para a fabricación intelixente e a monitorización remota.
Preview M5Stack PowerHub: Controlador de xestión de enerxía programable
Información detallada sobre o M5Stack PowerHub, un controlador de xestión de enerxía programable integrado con coprocesadores ESP32-S3 e STM32, con especificacións, guía de inicio rápido para probas Wi-Fi e BLE e información de cumprimento da FCC.
Preview M5STAMP Manual do usuario da placa de desenvolvemento IoT C3 ESP32
Explora o M5STAMP C3, a placa de sistema ESP32 máis pequena de M5Stack. Este manual detalla as súas características e especificacións e ofrece guías de inicio rápido para o desenvolvemento de Arduino IDE, Bluetooth e WiFi, o que a fai ideal para aplicacións de IoT.
Preview M5Stack CoreS3: Manual do usuario e especificacións técnicas da placa de desenvolvemento ESP32-S3
Explora a M5Stack CoreS3, unha placa de desenvolvemento baseada en ESP32-S3 cunha pantalla TFT de 2 polgadas. Esta guía completa abrangue os procedementos de inicio rápido, a configuración do Arduino IDE, a comunicación serie Bluetooth, a dixitalización WiFi, as descricións dos pines e a supervisión funcional.viewde CPU, memoria, almacenamento, reloxo e xestión de baixo consumo, xunto con características eléctricas detalladas e información de cumprimento da FCC. Ideal para desenvolvedores e afeccionados.
Preview Manual do usuario e especificacións de M5Stack Core 2.75
Este documento ofrece unha revisión completaview do M5Stack Core 2.75, que detalla as súas especificacións, características e instrucións de configuración para a dixitalización Wi-Fi e BLE usando o IDE de Arduino.