See also the minifarm control system built with MM6D, MM7D, MM8D and MM9A equipment!
I. Hardware1. Technical data- Supply voltage: 230V AC
- Auxiliary voltage: 12V DC
- Supply current: max. 15 A (with load)
- Mechanical size: 300 x 220 x 120 mm
- IP protection: IP 55
- Mass of cover: termoplast (ABS)
- Communication: WLAN and serial port
- Latest software version: v0.3
- Administration: serial console
- User interface: web user interface
Maximal load of outputs:
- Status lamp: 12V DC 6W (protected by Wickmann type fuse)
- Lamp output: 230V AC 460W (protected by breaker)
- Ventilator output: 230V AC 460W (protected by breaker)
- Heater output: 230V AC 2.3 kW (protected by breaker)
The device has four 12V DC inputs separated by an optocoupler and four relay outputs. Their status can be queried or set via wireless network and HTTP. The power outputs can also be switched manually. The continuous operation of the microcontroller is ensured by a 3.7V 500mAh LiPoly battery, the alarm sensor is provided by a non-rechargeable 6F22 9V battery. This device is a part of my growing site control system.
3. Look of unita) Manuals and connectors
- 1: Mains voltage signal light (white LED)
- 2: Auxiliary voltage signal light (white LED)
- 3: Activity signal light (blue LED)
- 4: Manual mode signal light (yellow LED)
- 5: Alarm/General error signal light (red LED)
- 6: Protection error signal light (red LED)
- 7: Lamp on signal light (green LED)
- 8: Ventilator on signal light (green LED)
- 9: Heater on signal light (green LED)
- 10: Lamp manual mode switch (SW1)
- 11: Ventilator manual mode switch (SW2)
- 12: Heater manual mode switch (SW3)
- 13: Operation mode switch (SW4)
b) Internal construction
- 1: Main board
- 2: Display board
- 3: Accumulator of microcontroller (BT101)
- 4: Battery of alarm input (BT201)
- 5: Transformers
- 6: Fuse of transformers (F4)
- 7: Fuse of auxiliary voltage (F6)
- 8: Fuse of external status lamps (F5)
- 9: Relay of external status lamp (K4)
- 10: Relay of lamp output (K1)
- 11: Relay of ventilator output (K2)
- 12: Relay of heater output (K3)
- 13: Breaker of lamp output (F1)
- 14: Breaker of ventilator output (F2)
- 15: Breaker of heater output (F3)
- 16: Mains connectors (P1-3)
- 17: Console connector (P18)
- 18: Alarm sensor connectors (P13-14)
- 19: Status lamp connectors (P15-17)
- 20: Lamp connectors (P4-6)
- 21: Ventilator connectors (P7-9)
- 22: Heater connectors (P10-12)
- 23: Mounting holes
You can download wiring diagrams as part of the complete documentation or in separate PDF, SVG and KiCAD formats from the developer/manufacturer's website. The Gerber files needed for production are included in the package.
5. Other drawings and documentsDocumentation package contents drilling drawings in PDF and DXF format.
6. Terms of useHardware documentation can be modified and/or redistributed under the Creativ Commons 4.0 Attribution Non-Commercial (CC-BY-NC-4.0) License.
7. Downloadable documentationThe complete documentation of the hardware in the.tar.gz format compressed file can be downloaded from the homepage or Github.
II. Software1. General descriptionThe task of the program is to operate the hardware and ommunicate with the central controller.
The program displays initialization steps and error messages on the serial console and system log.
When an HTTP request is received, the client's IP address and username argument are checked. If appropriate, read inputs or turn outputs on/off. After displays the result on the web interface. Incoming requests are indicated by the flashing of the blue activity LED.
2. InstallationBefore installing the program, you need to set these values:
// settings
const char* wifi_ssid = "";
const char* wifi_password = "";
const String uid = "";
const String allowedaddress = "";
Use an USB cable and Arduino IDE software to install program to microcontroller. Before installation procedure unpack required libraries from libraries directory or clone from Github.com to ~/Arduino/libraries/. After installation check operation of controller on serial console or with a web brower (use index.html in testpage folder) or with MM6DTest command line utility (on FreeDOS or GNU/Linux).
The device works automatically after installation and does not require human intervention.
The sensed status by the device, all other data and the system log can be queried with the MM6DRead application.
The device is designed to be controlled by another device. Queries and settings are made via http with data in plain text format, but pages intended for human reading are in HTML (e.g. start page, summary page). The following links can be used:
HTML pages:
- /: Help page
- /summary?uid=abcdef: Summary of status
Plain text data:
- /log?uid=abcdef: System log
- /version: Device information
Alarm
- /get/alarm?uid=abcdef: Get alarm status
- /set/alarm/off?uid=abcdef: Disable alarm
Get status
- /get/all?uid=abcdef: Get all status (except outputs)
- /get/manualswitch?uid=abcdef: Get status of manual op. switches
- /get/operationmode?uid=abcdef: Get status of operation mode switch
- /get/protection?uid=abcdef: Get status of overcurrent protection
- /get/heater?uid=abcdef: Get status of heater output
- /get/lamp?uid=abcdef: Get status of lamp output
- /get/ventilator?uid=abcdef: Get status of ventilator output
Operation
- /operation?uid=abcdef&a=0&h=0&l=0&v=0: Get all status (except outputs) and set status of outputs
Manual operation
- /set/all/off?uid=abcdef: Switch off all outputs
- /set/heater/off?uid=abcdef: Switch off heater output
- /set/heater/on?uid=abcdef: Switch on heater output
- /set/lamp/off?uid=abcdef: Switch off lamp output
- /set/lamp/on?uid=abcdef: Switch on lamp output
- /set/ventilator/off?uid=abcdef: Switch off ventilator output
- /set/ventilator/on?uid=abcdef: Switch on ventilator output
Arguments in URLs:
- uid: user ID
- a: disable alarm (0/1)
- h: switch off/on heater output (0/1)
- l: switch off/on lamp output (0/1)
- v: switch off/on ventilator output (0/1)
This program is free software: you can redistribute it and/or modify it under the terms of the European Union Public License 1.2 version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
6. Downloadable software packageThe package can be downloaded from the homepage in a.tar.gz compressed file or from Github.
Comments