Design of embedded remote measurement and control system based on ARMlinux

Publisher:calmrsLatest update time:2011-06-21 Keywords:ARMlinux Reading articles on mobile phones Scan QR code
Read articles on your mobile phone anytime, anywhere

Preface

At present, in most remote measurement and control systems, the hardware of the system uses 8/16-bit single-chip microcomputers, and the software is mostly programmed in assembly language, which only contains a simple loop processing control flow; the communication between single-chip microcomputers (or host computers) is formed through RS232, RS485 or CAN bus to form a local area network, and then the PC is used as a Web server to communicate with the Internet. Such remote measurement and control equipment is costly, large, slow, and consumes a lot of power. Now, the price of 32-bit embedded CPUs has dropped, and the performance indicators have also improved, providing possibilities for the widespread application of embedded systems. Based on the above situation, we apply embedded systems to remote measurement and control systems, which greatly improves the performance of the measurement and control system, while reducing costs and power consumption, and greatly reducing the size.

Embedded systems are generally developed using embedded operating systems. In the selection of embedded operating systems, Linux has complete open source code, so it has the characteristics of modifying and optimizing the system, stable kernel, applicable to multiple CPUs and multiple hardware platforms, and supporting networks, so it is better to choose Linux as an embedded operating system. The embedded remote measurement and control system based on ARMlinux proposed in this paper can not only realize local data acquisition and control, but also realize remote measurement and control tasks.

1. Hardware system

The hardware system is shown in Figure 1. S3C2410 contains a 16/32-bit Risc (ARM920T) CPU core with a main frequency of 200Hz, an 8-channel 10-bit AD converter and a large number of I/O ports, LCD controller and other rich interfaces. It can run Ucosll, ARMlinux and Wince embedded operating systems. DM 9OOO is a 10M/100M Ethernet interface control chip. This hardware system has a simple structure and low cost, and can directly access the Internet without a PC.


2. Software system

The embedded operating system is the core of the entire embedded system. This system uses the ARMlinux system. Since the storage capacity of the embedded system is very small, the ARMLinux operating system must be tailored to fit into the limited memory. Many materials have discussed this, so I will not repeat it here. The following mainly introduces the remote measurement and control software design based on the operating system. Its architecture is shown in Figure 2.

2.1 Web server based on Boa

There are three main web servers for embedded Linux: Hapd, Thttpd and Boa. Httpd is the simplest web server. It has the weakest function and does not support authentication or CG1. Both Thttpd and Boa support authentication, CGI, etc., and have relatively complete functions. Boa is a small single-task Httpd server with open source code and excellent performance, which is particularly suitable for application in embedded systems. The following introduces the porting and compilation of Boa.

For embedded Linux with MMU, after downloading Boa to the Redhat host, unzip it to any directory, and then modify the compiler in Boa/src/Makefde. For example:
CC=/opfhosfarmv41/bin/armv41—unkllown—linux—gcc
CPP=/opt/host/army41/bin/armv41—unknown—linux—g++

After that, just execute make in the Boa/src directory to generate the Boa executable file. Copy it to the bin directory of the ramdisk mount directory, add the configuration file and HTML/CGI file, and then redo the ramdisk. [page]

Figure 3 Experimental results
3. Test results

First, build an embedded development environment based on S3C2410, burn the compiled booloader, embedded Linux kernel and ramdisk into Flash, then start the Boa server, enter the IP address of the embedded system in the browser of the PC, and the web page shown in Figure 3 will be displayed. By clicking slow, medium and high speeds, and then clicking OK, the flashing of the LED on the measurement and control board changes from slow to fast, and the design goal is successfully achieved.

4. Conclusion

The remote measurement and control system based on ARMLinux developed by us has truly realized remote measurement and control through the Internet. It has the performance of a general platform and is particularly suitable for home appliance network monitoring and remote industrial control with low real-time requirements. Of course, with the improvement of hardware and network speed and the improvement of the real-time performance of the operating system, the performance of this measurement and control system will be greatly improved, so it has a good application prospect.

Keywords:ARMlinux Reference address:Design of embedded remote measurement and control system based on ARMlinux

Previous article:Application of ProteuS in ARM system design
Next article:The transplantation design of uC/OS based on ARM microprocessor

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号