Introduction
PIK-PIK RTU2 — is a controller with human machine interface, based on Arduino MKR WiFi 1010. It has datalogging and remote control functionality. High-quality industrial connectors allows connecting various kind of sensors and actuators.
The device is still in development.
Files
- Source code for Arduino board: pik-pik_rtu2_[Ver_0.8].ino.zip (53 KiB)
- KiCad Wiring diagram: pik-pik_rtu2_KiCad.zip (66,3 KiB)
- PIK-PIK RTU2 Enclosure model for FreeCAD: pik-pik_-_rtu2_enclosure_rev3.FCStd (3,5 MiB)
- Protective cover against accidental battery switch operation: pik-pik_rtu2_-_power_switch_protection.blend (1,0 MiB)
- PIK-PIK RTU2XS1 Enclosure model for FreeCAD: pik-pik_-_rtu2xs1_rev2.FCStd (1,5 MiB)
- PIK-PIK RTU2XS2 Enclosure model for FreeCAD: pik-pik_-_rtu2xs2.FCStd (2,2 MiB)
- Bill of Materials: pik-pik_rtu2_-_bom.ods (45,4 KiB)
- Photo/Video Gallery (NextCloud)
Philosophy and goals
- Use free software as much as possible;
- Convenient and intuitive human-machine interface;
- Autonomy and portability; (I ordered the fattest LiPo cell that was sold)
- Security and encryption;
- Install in the country house and remotely control: refrigerator, two heaters, water pump and boiler.
- Free and open source schematics, drawings, models and source code of this project.
Wiring diagram
The wiring diagram of this project is not 100% accurate at the moment and needs clarification. Buttons do not have pull-down resistors, wiring of remote controlled sockets is incomplete.
Unfortunately I have used all available pins. PIN A2 could be freed, if disconnected from Light Sensor on Environment Shield, which is useless inside a black box.
I didn't found a reliable way to get information about USB power in the software, so I have voltage divider for USB-SENSE.
I used 3.3V ⇒ 5V DC Power and Signal converter to operate chinece LCD screen. The power converter might be unnecessary, as I learned that PMIC has boost mode. I haven't tested that yet. Needs further investigation.
It turns out that the 16-bit general purpose input/output expander PCF8575 uses open collector as output, while the datasheet gives contradictory information. So, to give positive signal to relay module, I had to build a simple inverter based on general purpose PNP transistor 2N2907A
Functions
Weather station
The device will use the following sensors:
- Mounted on top of the main board is an MKR ENV Shield, which has a humidity sensor, an atmospheric pressure sensor, and a temperature sensor;
- Two external digital thermometers DS18B20. One is indoor, the other is outdoor.
Human Machine Interface (HMI)
- Standard Chinese 20x4 LCD screen with RGB color backlight (rainbow animation, wow!);
- 6 control buttons: ESC, OK, Left, Right, Up, Down. With such control, you can even enter text;
- Piezo buzzer for sound notification;
- 6 different LED colors:
- Battery charge LiPo 2.7 Ah 3.7 V;
- Time synchronization;
- WiFi;
- I / O operations on the SD card;
- 2 spare.
- Battery power switch.
Controller
- 2 × 3 digital outputs are provided. I'm going to turn the relays on / off the power in the sockets.
Data logger
- The MKR ENV Shield has an SD card slot. I set the sliver to 16 GB;
- With a specified interval, all telemetry is recorded on the SD card;
- Synchronization of time via the Internet.
Remote control
- Internet connection via built-in WiFi module;
- WebServer with encryption and password: on the website, you can manage outlets, view graphs of telemetry changing over time and download logs for further processing;
- Tunnel forwarding in case ports cannot be opened.
Remote controlled power outlets
PIK-PIK RTU2XS1
Two 230 V / 16 A / IP44 sockets controlled by chinese dual 10 A relay modules.
Video demonstration:
Video: valkatr_-_pik_pik_rtu2xs1_test.mp4 (21,6 MiB MB)
PIK-PIK RTU2XS2
Second remote controlled power socket with slight variation.
The power cable is connected through IEC C14 Plug (the same you can find on the power source of a PC).
PIK-PIK RTU2XS3
Third remote controlled power socket.
In this version I attempt it to make rain proof. There will be a rubber seal between the lid and the enclosure.