Design of forest fire monitoring system based on ZigBee and ARM technology

Publisher:Blissful5Latest update time:2012-06-15 Source: 电子设计工程 Keywords:ARM Reading articles on mobile phones Scan QR code
Read articles on your mobile phone anytime, anywhere
Forests occupy an important position in the national economy. However, forest fires can cause serious harm to forests. However, humans have not yet made a breakthrough in controlling forest fires, so it is particularly important to extinguish the fire immediately when it is still in its infancy. Therefore, the promotion of forest fire monitoring systems is of great value and significance. The
forest fire monitoring system uses sensor nodes with various functions preset in the forest to collect various forest environmental parameters, transmit them to the host computer, and use information management software to perform data storage, display, analysis and processing operations to predict and alarm abnormal situations.
At present, some forest fire monitoring in China still adopts methods such as building watchtowers and establishing video surveillance. Because forest fires often occur in sparsely populated primeval forests, the above methods have many shortcomings. In view of this, a forest fire monitoring system based on ZigBee+shortwave wireless communication is proposed. ZigBee is a short-range communication technology that is suitable for the networking requirements of sensor nodes; shortwave, as a long-range wireless communication technology, has unique advantages in remote data transmission. The above two complement each other and have broad application prospects in forest fire monitoring systems.

1 Overall design of the communication system
The whole system consists of three parts, as shown in Figure 1.

a.jpg


1) ZigBee network The ZigBee modules in this network can be divided into End-Node and Coor-Node according to their functions. End is a data collection node with a sensor that collects and wirelessly sends forest environment information; Coor-Node is composed of and used. In a single network, all End-Node and Coor-Node nodes form a star network according to the ZigBee protocol.
2) Relay node A network relay node with a controller has the ability to convert shortwave and ZigBee protocol data. The ZigBee module part receives the data collected by the ZigBee network, and after processing, transmits it to the remote host computer monitoring center through the shortwave data transmission radio. At the same time, it can also obtain various control and setting instructions from the host computer through the shortwave data transmission radio, and transmit these instructions to the ZigBee network, thereby realizing the setting of the monitoring network.
3) Host computer monitoring center At the host computer end, the radio converts the received analog signal into a digital signal, and the data is input into the host computer management software through the serial port, thereby realizing the setting of the entire monitoring network system and the display, query, and storage of forest environment parameters.
[page]

2 System Hardware Design
The system hardware design consists of three parts: the End-Node, Coot-Node and Relay Node of the ZigBee network. The End-Node uses the XBee PRO 900XSC module as the wireless transceiver module, and the Coot-Node uses the ARM7+XBee PRO 900 XSC+Pt-205 module. The Relay Node uses the Pt-205 module shortwave transmission module. The following analyzes the hardware design of the Coor-Node. The Coor-Node hardware design block diagram is shown in Figure 2.

b.jpg


Coor-Node is located in the middle layer of the system. It needs to communicate with the wireless sensor network and exchange data with the host computer monitoring center through the data transmission radio. This requires it to have strong data processing capabilities. Based on this consideration, this design scheme uses ST's STM32F103C8 as the microcontroller. STM32F103C8 is a microcontroller based on a 32-bit CortexTM-M3 core CPU with real-time simulation and tracing, and has 64 kB embedded high-speed Flash memory. It uses a 48-pin package, extremely low power consumption, multiple 32-bit timers, 2 12-bit ADCs, 1 CAN bus and up to 7 external interrupts.
The data transmission radio module uses the FY602 model data transmission radio, with a carrier frequency of 433MHz ISM band, no need to apply for a band, and the interface rate and channel rate can reach 38,400 bps. It has strong interference resistance, high receiving sensitivity, and is widely used.
The new XBP24-BWIT-004 ZigBee module launched by DIGI has a data transmission rate of 250 kbps. The communication distance is 1 600 M, supports AT and API command sets, and the working frequency band is 868/915 MHz. It is particularly suitable for long-distance networking requirements.
Considering that the specific hardware circuit diagram design is relatively complicated, the hardware design block diagram of the Coor-Node node is given here. STM32F103C8 is the middle layer between the data radio and the ZigBee module. It connects the data radio and ZigBee through two serial ports respectively. As the interactive layer of analog radio data and ZigBee data, the conversion of the two network data is realized by programming its software.
The system hardware design mainly designs its peripheral circuits with STM32F103C8 as the center, including power circuit design, clock circuit design, reset circuit design, storage circuit design and interface circuit design.
Because the working voltage and current of many chips on the Coor-Node circuit board are different, the design of the power supply part is very critical. The whole system is powered by an external 12 V solar battery, while the operating voltage of TM32F103C8 is 1.8 V, the operating voltage of I/O is 3.3 V, the operating voltage of the data transmission station is 4.5-5.5 V, and the power supply voltage of the ZigBee module is 3.3 V. Therefore, LM2576-5.0, MIC29302 and AMS1117 series voltage conversion chips are selected to obtain the corresponding operating voltage of each chip. The design concept of the power supply part is shown in Figure 3.

c.jpg


Compared with the power supply, the design of the clock circuit and the hardware reset circuit is relatively simple. The clock crystal uses a 12 MHZ external crystal circuit, and the hardware reset circuit is implemented using the MAX813 reset chip. Since the TM32F103C8 only has 64KB of on-chip Flash memory and 20 kB of SRAM, it can only meet the basic needs of the system. Considering the storage of related system parameters such as the ZigBee sub-node address, an 8 MB Flash and a 32 k Sram62256 are expanded.
In terms of the peripheral device interface circuit, since the TM32F103C8 and the data transmission radio and the ZigBee module are all connected by serial ports, the circuit design is simple and reliable. The program burning method of TM32F103C8 adopts the in-system (ISP) method, using ST's ISP software. After setting the chip's startup mode to system memory, the Bin file can be downloaded through the serial port and ISP software. The program download board is mainly composed of a Maxim MAX3232 level conversion chip. It can convert the PC serial port standard (RS232) to the TM32F103C8 serial port TTL standard.
Compared with TM32F103C8, since the digital radio and XBee are both module packages, the peripheral circuit design is relatively simple. The serial port of the Xbee module is directly connected to the serial port 0 of the TM32F103C8. The serial port of the digital radio is directly connected to the serial port 1 of the TM32F103C8. In addition, in actual applications, in order to increase the visualization of the system, digital tube displays and LED indicators are added to the hardware circuit. The operation status of the Coor-Node node can be understood through the status of the digital tube and LED, such as the connection with the relay node, the normal operation of the chip, and the reception and transmission of forest environmental parameters.

[page]

3 System software design
The system software design is divided into 4 parts: MCU software programming of XBee module, TM32F103C8 software programming of Coor-Node, software programming of relay node, and design of host computer management software. Here we only introduce the software programming of XBee module. XBee software programming includes MCU programming on XBee module of acquisition node and MCU programming on XBee module of Coor-Node.
MCU programming on XBee module of Coor-Node. XBee module of Coor-Node acts as coordinator in the constructed star network, initializes protocol stack, creates PAN CO-ORDINATOR, selects PAN ID and short address of Coor-Node, selects idle channel, starts network, and forwards data. The coordinator software flow chart is shown in Figure 4.

d.jpg


The programming of the XBee module of the End-Node node, first initialize the protocol stack, then scan the channel to find the coordinator Coor-Node node in the network, send a request to join the network through the corresponding channel, once the Coor-Node node accepts the device, it will send a 16-bit short address to the device as the device identification in the network.
The system task feeds the dog regularly and sends heartbeat frames to the upper computer. The regular feeding of the dog can realize automatic reset in the case of "runaway" and "deadlock" of the program: when the data upload interval is long, the regular sending of heartbeat frames can detect whether the device is working properly.

4 Conclusions
A new wireless forest fire monitoring system based on ZigBee and ARM is proposed above, which organically combines the efficient processing technology of ARM, the flexible short-wave remote data transmission technology and the low cost and low power consumption of Zig Bee. Experiments show that the system is stable and reliable, and the system has good application prospects in forest fire monitoring.

Keywords:ARM Reference address:Design of forest fire monitoring system based on ZigBee and ARM technology

Previous article:Sun tracking system based on ARM embedded image processing platform
Next article:ARM-based rapid prototyping platform solution

Recommended ReadingLatest update time:2024-11-16 19:37

Day 1 - ARM addressing mode
Day 1 - ARM addressing mode 1. Immediate addressing The purpose of the immediate addressing mode is to place the operand immediately after the opcode and put it in the instruction code segment together with the opcode. When the program is running, the program directly calls the operand without going to other address
[Microcontroller]
Intel's foundry business and Arm announce a collaboration involving multi-generation cutting-edge system chip design
This cooperation will bring chip designers a powerful combination of Arm cores and Intel's Ami-era process technology. Santa Clara, California and Cambridge, UK, April 12, 2023 – Intel Foundry Services (IFS) and Arm today announced the signing of a multi-generation cutting-edge system-on-chip design. The agreement a
[Embedded]
ARM History 4 - LCD
    It has been 10 days since I last wrote about my journey. It was the National Day holiday, so I gave myself a few days off - I played some games, chess, etc.     In fact, it took a lot of time and brainpower to write the touch screen driver and understand the interrupt process in ARM. I will simply share the cond
[Microcontroller]
ARM assembler extensions to C
__swi void ledtest(); //: declare edtest to be a soft interrupt. __asm ​​Inline assembly //: Usually you need to embed assembly code in a C program. In this case, you can use the __asm ​​keyword to instruct the compiler that the following code is written in assembly language. __inline defines an inline function //: Ju
[Microcontroller]
Proteus simulation ARM7 LPC2101 AD converter source program
When debugging, first observe whether the resistor to be tested works normally. Insert a voltage probe at the changing end of the resistor. For specific methods, select the voltage probe (Voltage) in the tool probe on the left to run the simulation, click the resistor, and observe whether the probe voltage is constan
[Microcontroller]
Proteus simulation ARM7 LPC2101 AD converter source program
ARM exception return correction value
The ARM exception return correction value varies depending on the exception type, which mainly depends on two aspects: a. After the exception is handled, the returned address is the address of the instruction executed when the exception occurred or the address of the next instruction executed; b. When handling an exce
[Microcontroller]
ARM exception return correction value
Uncovering the secrets of the long battery life of CES wearable innovations
    Wearable devices were undoubtedly one of the highlights of the Consumer Electronics Show (CES) in Las Vegas, USA, earlier this year. However, some analysts believe that "CES 2014: smart wearables have hot spots but no bright spots" because no product can make consumers fall in love with it at first sight. Does th
[Mobile phone portable]
Uncovering the secrets of the long battery life of CES wearable innovations
ARM file usage
Use of files 1. Experimental purpose Learn the API functions related to files and display the text files on the screen. 2. Experimental content Use the API functions provided by the system to open an English text file and output the contents of the file to display on the LCD screen. 3. Preli
[Microcontroller]
ARM file usage
Latest Microcontroller Articles
  • Download from the Internet--ARM Getting Started Notes
    A brief introduction: From today on, the ARM notebook of the rookie is open, and it can be regarded as a place to store these notes. Why publish it? Maybe you are interested in it. In fact, the reason for these notes is ...
  • Learn ARM development(22)
    Turning off and on interrupts Interrupts are an efficient dialogue mechanism, but sometimes you don't want to interrupt the program while it is running. For example, when you are printing something, the program suddenly interrupts and another ...
  • Learn ARM development(21)
    First, declare the task pointer, because it will be used later. Task pointer volatile TASK_TCB* volatile g_pCurrentTask = NULL;volatile TASK_TCB* vol ...
  • Learn ARM development(20)
    With the previous Tick interrupt, the basic task switching conditions are ready. However, this "easterly" is also difficult to understand. Only through continuous practice can we understand it. ...
  • Learn ARM development(19)
    After many days of hard work, I finally got the interrupt working. But in order to allow RTOS to use timer interrupts, what kind of interrupts can be implemented in S3C44B0? There are two methods in S3C44B0. ...
  • Learn ARM development(14)
  • Learn ARM development(15)
  • Learn ARM development(16)
  • Learn ARM development(17)
Change More Related Popular Components

EEWorld
subscription
account

EEWorld
service
account

Automotive
development
circle

About Us Customer Service Contact Information Datasheet Sitemap LatestNews


Room 1530, 15th Floor, Building B, No.18 Zhongguancun Street, Haidian District, Beijing, Postal Code: 100190 China Telephone: 008610 8235 0740

Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved 京ICP证060456号 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号