Main Page

From pymate.io wiki
Jump to navigation Jump to search

About PymateIO

Pymate-powered-by-micropython.png

PymateIO is an affordable Industrial Controler (PLC) Powered with MicroPython.
PymateIO is ready for Industry, Reliable, Developer-Friendly and Easy to Install.

Micro Python is an optimized version of Python 3 dedicated to embedded systems like microcontollers.
Python scripts are stored on the device and running on z bare metal Python Virtual Machine (like computer does).

PymateIO EcoSystem

PymateIO is expandable by design starting with few board, new arrivals should come with time.


Key products

Pymate-core-angle-small.png PymateIO Core Core8ADI8DOSC
  • DIN rail mounting
  • Spring cage connector
  • 8-28V power supply
  • 8 digital inputs 12/24V tolerant
  • up 8 configurable analog inputs (10V max)
  • 8 digital outputs (PNP, 250mA, High Side control)
  • 1 user button, 2 user LEDs
  • Native Modbus via RS485
  • Dedicated status LEDs for each Inputs/Outputs
  • Expandable by design with LTE-M, WiFi, Ethernet, relays, analog I/Os, PT100, Zigbee, and more,..
  • Native USB support
  • MicroPython support with libraries
  • Developper friendly
  • Core8ADI8DOSC product tour

TODO:Link to shop

Pymate-16adi16do-angle-small.png PymateIO 16ADI16DO expansion
  • DIN rail mounting
  • Plug-and-play (ready to use)
  • Daisy chain by design (up to 120 boards)
  • Spring cage connector
  • 8-28V power supply
  • 16 digital inputs 12/24V tolerant
  • up 16 configurable analog inputs (10V max)
  • 16 digital outputs (PNP, 250mA, High Side control)
  • 1 user button, 2 user LEDs
  • 16ADI16DO expansion tour

TODO:Link to shop

Pymate-hmi-angle-small.png CommandHMI [COMING SOON]
  • 8-28V power supply
  • 16:9 TFT 4.3" (96x53mm)
  • 480 x 272px
  • Serial: RS232 + RS485
  • Protocols: Modbus, ASCII, ...
  • USB-A: Master modbus, data export (to USB key)
  • USB-C: programming port
  • Variant: 7.0", 10.2", 15.6", 4.3" Ethernet
  • Read more

TODO:Link to shop

Product Nomenclature

Letter Feature
DI Digital Input. It is prefixed with the number of input (ex : 8DI or 8ADI).

May be in combination with A.

A Analog Input. It is prefixed with the number of analog input (ex : 8A or 8ADI).

May be in combination with DI.

DO Digital Output. It is prefixed with the number of analog output.
S Serial (RS485, MODBUS RTU)
C CAN bus
P SPI bus
I I2C bus
U UART
T Modbus TCP

Products tour

Core board

Tlogo-core.jpg

Tour of the PymateIO Core board.

16ADI16DO board

Tlogo-16adi16do.jpg

Tour of the PymateIO 16 Analog-DataIn and 16 DataOut board.

 

Programming HowTo

MicroPython

Tlogo-about-MicroPython.jpg

What is MicroPython?

Thonny IDE

Tlogo-thonny.jpg

Prepare your MicroPython IDE environment.

Connect Pymate

Tlogo-connect.jpg

Connecting the board

REPL

Tlogo-repl.jpg

The MicroPython command line

Startup script

Tlogo-micropython-main.jpg

What are main.py and boot.py

 

  • About MicroPython
  • IDE and tools
  • Connecting your board
  • REPL: the command line
  • main.py and boot.py

Programming First-step

PymateIO

Tlogo-pymateio.jpg

Access Input and outputs with PymateIO

Input/Output

Tlogo-under-construction.jpg

TRAVAUX EN COURS. Wiring and using DI and DO

Analog

Tlogo-analog.jpg

Wiring and using Analog Input

User button

Managing user button in code

User LEDs

Managing user LEDs with code

Cycle timing

Measuring mainloop execution time

16ADI16DO intro

Using the 16ADI16DO expansion with PymateIO

 

Common use-cases

Page-under-construction.pngPage(s) under construction.
  • Remote Control (Télérupteur)
  • Time relay (relais temporisé)
  • Hystersis management
  • Value mapping
  • PID control
  • Fine LED control
  • Emergency Stop (using IRQ)
  • Watchdog
  • Data-Logging

Mini projects

Page-under-construction.pngPage(s) under construction.
  • Tank refill

Expansion programming

Page-under-construction.pngPage(s) under construction.
  • About board_id
  • CAN bus scanning
  • 16ADI16DO Programming
  • Setting board_id
  • Digital Input/Output
  • Analog Input

Advanced programming

Page-under-construction.pngPage(s) under construction.
  • About asyncio
  • Creating tasks
  • Scheduling tasks

PymateIO Expansion Bus

Page-under-construction.pngPage(s) under construction.
  • The connector
  • Accessing I2C bus
  • Accessing SPI bus
  • About CAN bus

References

Page-under-construction.pngPage(s) under construction.
  • PymateIO library
  • Helper libraries