1. FarmBox
1. Introduction
Device designed for high accuracy (15-30 cm from pass to pass) positioning agricultural
equipment, which perform field work. FarmBox is a separate block, which is installed on
the tractor’s roof. Device working in two modes:
tracker mode. Register and accumulate information about current position and
transmit it to remote server.
GNSS receiver mode. Transmit current coordinates in NMEA format through
Bluetooth or/and RS232.
FarmBox
GNSS
Sensor
Bluetooth
Transceiver
2
4
Android Device [10]Android Device [10]
Remote Server [11]Remote Server [11]
GNSS Satellites [9]GNSS Satellites [9]
Cellular
Transceiver 7
MCU
RS232
Transceiver 5
Magnetic
Compass 3
Accelerometer
1
6
External Navigator [12]External Navigator [12]
CAN
(ISOBUS)
Tractor
8
13
Figure 1. FarmBox: system architecture.
2. System Architecture
GNSS Sensor [2] receive coordinates from GNSS Satellites [9] (GNSS sensor
supports: GPS, GLONASS, GALILEO navigation systems and SBAS [WAAS,
2. EGNOS] augmentation system) and transmeet it, compliant NMEA 0183, to
microcontroller (MCU [6]).
Accelerometer [1] – transmits data about acceleration of the vehicle to
microcontroller.
Magnetic Compass [3] – transmits data about direction of magnet field (orientation
relative to the magnetic poles of the Earth) of the vehicle to microcontroller.
CAN (ISOBUS) [8] – transmit to microcontroller Tractor [13] data onboard
computer (speed, tachometer etc).
MCU [6] (microcontroller) – processes the data from GNSS Sensor, Accelerometer,
Magnetic compass, CAN, accumulates high accuracy coordinates in internal flash and
transmits it, compliant NMEA 0183, to Bluetooth transceiver, Cellular transceiver, RS232
transceiver. Receive configuration commands by USB or Cellular Transceiver.
Bluetooth transceiver [4] – transmit high accuracy coordinates, compliant NMEA
0183, to Android Device [10].
RS232 transceiver [5] – transmit high accuracy coordinates, compliant NMEA 0183,
to External Navigator [10].
External Navigator [12] – displays current vehicle position on map, it’s can be
tractor onboard computer or navigator, compliant NMEA 0183.
Cellular Transceiver [7] – transmit coordinates, compliant NMEA 0183, to Remote
Server [11] and receive configuration commands by SMS, GPRS.
2.1 Device has two modes:
a. GNSS receiver mode. Device transmit by Bluetooth or/and by RS232:
precise time in Greenwich;
coordinates: latitude, longitude, altitude WGS-84, corrected with account
all amendments (SBAS, moving direction using internal compass,
acceleration using internal accelerator);
o exclude unnecessary points on a straight section of the route;
o detailed description of turns (add extra points);
speed;
orientation relative to the magnetic poles of the Earth.
b. Tracker mode. Device accumulates and transmit to Remote Server:
data from GNSS receiver;
transmit data in real time when there is a connection;
accumulates coordinates in internal flash when there is no connection;
diagnoses the status of the device through USB/GPRS;
supports configuration by SMS, GPRS;
transmit data from CAN BUS.
3. Device support remote firmware recording.
UV/OV protect
(MAX16127,
STD20NF06L)
GNSS module
MainChip
DC/DC
Converter
(TPS5450,
MIC29302,
TLV1117)
9...26V
5V
4.7V
3.3V
RTC
Litium Battery
3V
CAN
UART4
RS 232
(MAX3221) Signal
connector
5 pin
Power
connector
2 pin
CAN[ISOBUS]
(SN65HVD230/
MCP2551T)
Hard Reset
Supervisor
I2C
Accelerometer and
Magnetometer
(LSM303D)
FSMC
Flash Memory 4Gb/
8Gb/16Gb/
(MT29F16G08)
USB
UART1
Debug
interface
USB
connector
SWD or else
Cellular moduleUART2
Bluetooth moduleUART3
SIM
Holder
Backup Battery
3.7V Battery Charger
(MAX1555EZK-T)
1
2
4
3
5
6
7
8
9
11
10
13
14
12
16
18
15
17
Figure 2. FarmBox: functional diagram.
3. Functional description.
When there is external power supply, microcontroller asks accelerometer. If there is no
acceleration, microcontroller going to sleep mode and wakes up each 60 seconds, asks
accelerometer, else microcontroller asks GNSS module and accelerometer each 1
second, determinates current position write into flash and:
in GNSS receiver mode, continuously transmit by Bluetooth or/and by RS232
data mentioned above in paragraph 2.1.a;
Tracker mode. Server Device accumulates and continuously transmit to Remote
server data mentioned above in paragraph 2.1.b.
4. When there is no external power supply, microcontroller asks accelerometer each
1/10/30/60 minutes (set externally through USB, SMS, GPRS). If there is no
acceleration, microcontroller going to sleep mode, else microcontroller asks GNSS
module, determinates current position, write it into flash and send current position each
10/30/60/120 minutes (set externally through USB, SMS, GPRS) by cellular module to
remote server.
GNSS module works in sleep mode, until microcontroller wake it up; it’s send to
microcontroller current position.
Cellular module configured by microcontroller, depending device working mode:
sleep mode;
transfer mode – one time transfer (10/30/60/120 minutes);
transceiver mode – continuous receive/transmit.
Bluetooth module configured by microcontroller, depending device working mode:
sleep mode;
transceiver mode – continuous receive/transmit.
RS232 module is works in standby mode until external request, after it transmit current
coordinates.
Connectors 15, 17 can be united into one, compliant IP67 (D-Sub 9P: 09675097658
Harting).
Power Connector [1] – high power connector, compliant IP67 (KLS15-249-2B).
UV/OV protect [2] – undervoltage/overvoltage protection. Input voltage monitored
by MAX16127, which turns off STD20NF06L when input voltage higher 26V or lower 9V;
maximum input voltage – 100V, working voltage 9…26V.
DC/DC converter [3] – three step down direct current converters: TPS5450 –
converts 9…26V to 5V 3A max (power supply for all systems), MIC29302 – converts
5V(9…26V) to 4.2V 4.5A max(supply for cellular module), TLV1117 – converts 5V to
3.3 V 800 mA max (supply for Main Chip and peripherals).
Backup Battery [4] – lithium polymer battery 3.7V 300…4000 mA/h (optional).
Without external power supply devise working in sleep mode, wake-up after external
event or signal from accelerometer, write events and current coordinates into internal
flash, send last sample each hour (30 min, 10 min, 1 min).
Battery charger [5] – MAX1555EZK – low cost 5V charger. BQ24100RHLR – charger
with high accuracy voltage, current regulation and battery temperature monitoring.
Select one of them.
Debug Interface [6] – pin pads for debugging and writing firmware into main chip
internal flash.
GNSS module [7] – Global Navigation Satellite System receiver, using GPS, GALILEO,
GLONASS, SBAS (can use one of the listed below: RXM-GNSS-GM Linx Technologies;
RXM-GNSS-TM Linx Technologies; Jupiter SL869 Telit Wireless Solutions; Jupiter SL871
Telit Wireless Solutions; NEO-M8N u-blox, M10478-A3 Antenova; GNSS L16 Quectel
Wireless Solutions; LR9130 LEADTEK; A5100-A Maestro-Wireless) receive and transmit
through UART to Main Chip flowing date, time, coordinates corrected by the system
SBAS corrections (or not corrected coordinates and corrections received by SBAS),
speed.
Cellular module [8] - Cellurar module using GPRS, HDSPA (can use one of the listed
below: HE910 Telit Wireless Solutions [have embedded GNSS]; UL865 Telit Wireless
Solutions; SARA-U270 u-blox; LISA-U200 u-blox; LISA-U230 u-blox; LISA-U270 u-blox;
UC15 Quectel Wireless Solutions; UC20 Quectel Wireless Solutions) receive through
UART from Main Chip and transmit to server: date and time in Greenwich; coordinates:
5. latitude, longitude, altitude, corrected with account all amendments (SBAS, moving
direction using internal compass, acceleration using internal accelerator). Receive from
server configuration commands and updated firmware for Main Chip.
SIM Holder [10] – connector for SIM card .
Litium Battery 3V [9] – backup battery for clock.
Accelerometer and Magnetometer [11] – LSM303D accelerometer and compass in
one chip; transmit through I2C or SPI to Main Chip acceleration and direction of magnet
field (orientation relative to the magnetic poles of the Earth).
Bluetooth module [12] – module compliant Bluetooth 4.0 protocol (can use one of
the listed below: OBP421 u-blox; OBS421 u-blox; CC2560 Texas Instruments;), receive
from Main Chip and transmit to external Android device date and time in Greenwich;
coordinates: latitude, longitude, altitude, corrected with account all amendments (SBAS,
moving direction using internal compass, acceleration using internal accelerator).
Flash Memory 4GB/8GB/16GB [13] – internal flash memory
MT29F04G08/MT29F08G08/MT29F16G08 (according to size 4-,8-,16- GB) for saving
current device location data.
RS232 [14] – MAX3221 chip transfer current device location data to external devises
by RS-232, compliant with NMEA 0183.
CAN[ISOBUS] [16] – connecting to tractor service bus compliant with
SAEJ1939 standard. Use SN65HVD230 or MCP2551T.
USB – bus for diagnostic and configuration device.
Main Chip [18] – central microcontroller (can use one of the listed below: STM32F103
ST Microelectronix; STM32F439 ST Microelectronix) receive coordinates from GNNS and
processes data from all sensors, adjust position and write data to internal flash and
transmit it to Cellular module and Bluetooth module.
Box – body should have a magnetic and mechanical attachment to the tractor roof,
compliant IP67; all antennas installed inside of box; top lid transparent for radio
waves. For the first prototypes can use standard boxes G3xxMF Gainta. Should also be
developed technological equipment for box.
Appendix 1…4 shows tables for main modules: Appendix 1 - Main Chip; Appendix 2 –
Bluetooth module; Appendix 3 - Cellular module; Appendix 4 - GNSS module.
4. Software.
Device is in sleep mode till the emergence of acceleration. Microcontroller wakes up
and:
a. in tracker mode – receives data from GNSS module accumulates it and sends by
cellular module to remote server.
b. GNSS receiver mode – receives data from accelerometer, compass, GNSS
module measures deviation, corrects position, accumulates data and sends it by
RS232 and/or Bluetooth.
6. Acceleration
Start
Transmit by
Cellular
Module
Transmit by
RS232,
Bluetooth
2
3
1817
Receiving data
from GNSS,
Accelerometer,
Compass
Sleep
1
Device Mode
5
Settings sent
by USB or
Cellular module
4
Power Flag
8
GNSS receiver
mode
Tracker mode
76
External
Power Supply
9
Battery
Power Supply
10
Receiving data
from GNSS,
Accelerometer,
Compass
Receiving data
from GNSS,
Accelerometer,
Compass 11
GPS Data
Filtering
12
GPS Data
Filtering
12
GPS Data
Filtering
12
Measurement
Deviation
13
Measurement
Deviation
13
Measurement
Deviation
13
Adjustments of
Coordinates
14
Adjustments of
Coordinates
14
Adjustments of
Coordinates
14
Timer
16
Transmit by
Cellular
Module 18
11 11
Data Buffering Data Buffering Data Buffering
15 15 15
Figure 3. FarmBox: Software Flowchart.
7. Sleep [1] – microcontroller works in sleep mode and wakes up each 60 seconds, asks
accelerometer.
Acceleration [2] – if there is acceleration microcontroller starts working (Start [3]),
else microcontroller goes to sleep mode.
Settings sent by USB or Cellular module [4] – modes are set (Tracker mode or
GNSS receiver mode) by USB or Cellular module.
Device Mode [5] – device has two working modes: Tracker mode; GNSS receiver
mode, settings are stored in external flash.
GNSS receiver mode [6] – mode set by user. In this mode device corrects
coordinates and send it to android device or external navigator.
Tracker mode [7] – mode set by user. In this mode device is registering and
accumulate information about current position and transmit it to remote server.
Power Flag [8] – if there is no external power supply, device goes to Battery Power
Supply mode [10], else device works in External Power Supply mode [9]. In
GNSS receiver mode device always works in External Power Supply mode.
Receiving data from GNSS, Accelerometer, Compass [11] – microcontroller
request data from GNSS receiver (coordinates, augmentation data), Accelerometer,
Compass.
GPS Data Filtering [12] – filtering wrong GPS points.
Measurement Deviation [13] – error calculation based on data obtained GNSS
receiver, Accelerometer, Compass.
Adjustments of Coordinates [14] – amendment to the current location.
Data Buffering [15] – microcontroller writes data to external flash in tracker mode;
microcontroller writes data to internal RAM in GNSS receiver mode.
Timer [16] – in battery power supply mode current position data, writes into flash and
send current position each 10/30/60/120 minutes (set externally through USB, SMS,
GPRS) by cellular module to remote server.
Transmit by RS232, Bluetooth [17] – data transfer to android device or external
navigator in real time.
Transmit by Cellular Module [18] – accumulated data are transmitting to remote
server.
8. 5.Testing and certification of the device
Devise is tested for compliance with standards electrical safety (IEC 60950), EMC
(CISPR 22, CISPR 24, CISPR 11), by methods specified in these standards in third-party
labs.
Self-testing. Microcontroller sends test requests to internal modules.
Manual testing. Testing of internal modules compliance to technical requirements.
Main parameters to be tested:
Power supply and power protect: operation voltage 9-26V; maximum voltage
100V;
CAN (ISOBUS) should connect and receive data from onboard computer vehicle ;
RS232: should connect to external navigator and retrieve data;
Bluetooth: device should connect to and transfer data continuously;
Accuracy of the device. Move the device a known trajectory and compare the
data with reference or use reference receiver (RTK system) and compare the
data. These tests should be conducted in geographic areas where device is
operated.
9. Appendix 1 - Main Chip
Manufact
urer
Country Web Model
Inter
nal
Flash
RAM FCPU UART USB CAN FSMC
TFT
LCD
Contr
oller
Unit
Price
$
ST
Microelec
tronix
USA
www.st.co
m/
STM32F103 1M 96KB 72MHz 5 1 +
16/8
k
- 6
STM32F439 2M 256KB 180MHz 8 1 2
16/8
k
+ 9,2
10. Appendix 2 - Bluetooth module
Manufact
urer
Country Web Model
Processoron
board
Interfaces GPIO SPP
Unit
Price $
Notes
u-blox
Switzerla
nd
http://www.
u-
blox.com/en
/
OBP421
2 MHz, ARM
32-bit Cortex
M3
processor
with 64 kB
RAMand
384 kB flash
SPI
UART
21 + 56
module,
Android
connectivity
OBS421 ND UART 9 + 42
module,
Android
connectivity
Texas
Instrume
nts
USA
http://www.
ti.com
CC2560 - UART + 2,12 Chip