Introduction with digressions. First iteration task
For a long time, or for a short time, it was decided to make a shaitan-machine for watering plants, which would βitselfβ grow representatives of the flora. Quotation marks here are meant to be appropriate due to, at first (and maybe even more) glance, the immensity of the task of autonomy of such devices (however, any robots, from vacuum cleaners to androids, who, as you know, do not know whether they think about electric sheep). In general, for the first iteration, it was conceived to give the plants water on a schedule, and not from the tank where the user prudently poured it, but directly from the water supply (it should be noted that this requirement, in itself, turned out to be, in terms of implementation complexity, comparable to other functions. this later). To monitor and correct the behavior of the machine, an interface was conceived. First local (display 16x2, yes buttons), and then remote, in the browser (Internet,the local network).
This article discusses the history of the development of the material part of the complex - actuators, hardware.
For the cause
Components were purchased in the form of an arduino, solid-state relays, a mounting box, sockets, a ball valve for watering with a timer (this was the first one available from a local hardware store) and other small things, such as a debug plate and wiring. A screwdriver was purchased, which quickly enough, during the assembly of the filling in the mounting box, drilled an expensive table in a rented apartment. This, in every sense, marked the transition from head work to hand work. It was decided that one should not completely abandon brain work and it would be better to think in advance, but to use sacrificial pads and other means of protection when using a hand tool and in general.
First result
( ) . , , . , , . ( , , , ) .
, , , . , STM32.
STM32
STM32VL-Discovery . . , , , . , , , , .
, , , STM32. .
. Eagle . . , "" . , . , β ( ).
Raspberry Pi. Pi STM32 UART. , PHP JS .
Linux, STM32. Linux - (, cat /dev/tty > dumpfile echo -e "data" > /dev/tty), PHP , STM32. . , PHP , , . C. , , .
- , STM32 16x2. / , / , . -, USB Raspberry Pi.
. .
. , . Welco. . , . , .
- STM32 , HC-SR04 , . , () . , .
, . , . , .
- ( 0.4 12, ) , . ( , , ), , .
( 2, 12), . , , .
Mixtank.
, , , , , , . - . , . , . , , , , , .
, . . , . . 20, 5 4/6. .
, , , . , , . .
, , , β -. 0.3 .
, , . , . , , . , . , , ( 1 4 ). , , . . , , . 12 5 , , , , , - . , β 5 . , , , .
. , , (, , , ). . , , .
, .
( ). , , . .
. , β 3/8 . , . 20 -. . , . . , , , . , , , .
4-5 10-12 . , , , .
.
, , . . , . . , , .
, , , , β , , . , . , / . , .
, .
L293. , . (, , ) . , . L6205PD. . , . , PD , . , . , , . , , Raspberry Pi. , , , , , , .
, . ADUM1250. , I2C- () β MCP23017. ADUM , / . MCP23017 MINI360, LM317. 10 . , 24, 36 (, LM317). L6205 50. 12.
4 L6205, , 16 . . I2C MCP23017 , . L6205 ( ), . ( ), , .
, , , , . , , . ( ).
, , , - , (fly back diode). , , , , .
, L6205PD ( ) , . , ( ).
, ( ) ( , EC-, TDS-). ( pH-), . , .
EC-
, , . ( - ). . , . , 555. β , . β . . , . , . DS18B20.
- 20 -.
.
, . , . .
pH-
, , CA3420, . . .
, LMP91200. , , . ADC ADS1110, - ADUM1250 . , ( β . , pH , , . , , , , ) .
( ) DC-DC , 0505, 1 .
EC
EC 555 . , DS18B20. . . .
, EVAL-0349.
. , , EC . , .
EC ( 555) , EVAL-0349. ADUM1250 , 0505 . EC . .
- . , , . , , -. . ( , ) . 70 , , , . .
, , , (, , ). ( ) , , . β , . , . , . Bluetooth Xiaomi. , . β . NRF24.
, , , , . NRF24 , . , .
, , (Capacitive soil moisture sensor ), , . STM32, 20 , F0. 555. ( EC ), . CR2032, , 555, , ( L293 L6205). LMC555.
TMP100 β I2C . , . , STM32 . , , . , , , .
, 555 ( ) /. , , . , EC .
Xiaomi , . , , . .
, , - . (, blumat) . , . , . .
, , . - .