06154250

Upload: tejaswini-reddy

Post on 14-Apr-2018

219 views

Category:

Documents


0 download

TRANSCRIPT

  • 7/30/2019 06154250

    1/4

    The Wireless Remote Control Car System Based On ARM9

    Wang Shaokun 1, Xiao Xiao 2, Zhao Hongwei 1, 2

    College of Software1, Department of Computer Science and Technology

    2

    Jilin University, JLUChangchun, China

    E-mail: [email protected]

    AbstractCurrent wireless robot system is usually composed

    by a microcontroller system, bare microcontroller constrained

    by hardware characteristics, it is difficult to satisfy many

    complex control while ensuring system real-time. View of this,

    the article based ARM9-structured processor and embedded

    Linux system, optimized and improvement the versatility and

    real-time capacity of wireless remote control car. The robot

    system collected the data by sensors and transmits the data tothe PC console which designed as the main calculate and

    determine center in the system by WIFI. PC sent the final

    commends to robot and the robot executes them. Through a

    simple hand signal recognition test, with several times

    experiments, as a consequence, has proven the wireless remote

    control car system might accomplish the complex multi-task

    controls under the safeguard timely premise. So long as in the

    WIFI hot spot coverage area, the infinite distant place server

    can apply current intelligent algorithms in the real life rely on

    the wireless remote control car system.

    Keywords- Computer application, Embedded development,

    Wireless Remote control car, ARM9, ATmega128

    I. PREFACEIn recent years, the applications of mobile robot have

    gradually become more diverse, which makes the robotcloser to people's daily life. At present, the middle and smallscale motion robot are usually designed based on single chipmicrocomputer without operating system, such asFIFA/RoboCup middle and small scale football robot, bionicsnake robot, multi-foot crawling robot and so on. In order tomake the research results of the robot can actually be used insolving more realistic problems, the increasingly complexcontrol process and some special application which is calledfor high real-time requirement has presented challenges tothe existing motion robot design pattern [1].

    The performance bottlenecks of the intelligent mobile

    robot focused on the following three aspects. The Firstcontradiction is between the development cost and thehardware performance. In order to reduce the cost of therobots hardware in design, we often use cost-effectivehardware to build the robot system. However, when thecontrols became more complex, precise increase gradually,the performance of the original hardware would beinadequate. Rebuild the robot will not only increase the costof inputs, but also waste the robot's life cycles seriously. Thenext contradiction is between complexity of controls and thereal-time performance. When the hardware performance is

    insufficient to complete the control of the higher complexitytask, the system often sacrifices time to compensate the lackof hardware performance. So that it brings a serious problemin real time. The third contradiction is different fields use

    platform is difficult to unity. When the mobile robot used indifferent occasions, as the users of the technology fromdifferent backgrounds, different habits, a lot of software andhardware tools due to the limited of hardware performance,or the interfaces is not enough will cause difficulties for

    practical use.

    II. OVERALL DESIGNTo settle the problems above, we proposed the ARM9

    based wireless remote control car system design scheme,which use the popular ARM9 processor architecture, andadopt the excellent open-source operating system Linux asthe embedded operating system. We increase the efficiencyof hardware resources by operating system task scheduling

    [2],

    use the embedded application software to make up for lackof hardware resources, which introduce a number of softwaretools directly to the mobile robot system to complete the

    complex intelligent control tasks and intelligent decision-making tasks, so that we can exploit the maximum

    performance of hardware resources, ensure the stability ofmobile robots with real-time while we make sure the controlof complex tasks in the case of cost savings.

    Figure 1. Overall Structure of Wireless Remote Control Car System

    Figure 1 is the overall structure diagram of wirelessremote control car system. According to the idea that the

    function decides structure, and hardware and software co-design principles

    [3], we used the distributed structure and

    divided the system into three parts: embedded remote controlcar, wireless network equipment and PC console.

    As Figure 1 shows, the left side is an embedded remotecontrol car. It is the main part of the mobile robot which cancommunicate with the console through WIFI. Embeddedremote control car can be equipped with sensors based onactual demands, to achieve measuring distance, counting,automatic obstacle avoidance, data acquisition, pattern

    2011 International Conference on Instrumentation, Measurement, Computer, Communication and Control

    978-0-7695-4519-6/11 $26.00 2011 IEEE

    DOI 10.1109/IMCCC.2011.224

    887

  • 7/30/2019 06154250

    2/4

    recognition and provide other functions. It can also achievesome basic mechanical function with the servo and transmitthe collected data to the PC console, through WIFI. In this

    paper, the embedded remote control car equipped with the

    image sensor used to implement video capture and gesturerecognition.

    Figure 2 shows the logic level structure of the embeddedremote control car. The bottom layer is hardware circuitlayer, which is the hardware physical implementation part ofthe car. We choose the ARM9 development board as thecontrol center which connects various sensors used toimplement the data collection, peripheral devices and motioncontrol circuit through the appropriate interfaces. Some

    peripheral devices related with the motion control can alsobe connected to the motion control circuit which controls themovement of remote control car by changing the motors

    parameters.The layer above hardware circuit layer is the operating

    system layer. The operating system kernel defines and

    coordinates the working manners of the underlying hardwareby driver management programs. Moreover, this layerimproves ARM9 processors working efficiency and thesystem real time performance through time management andmulti-task parallel processing. Meanwhile, operating system

    provides an interface to the user program, and the users caninteract with the kernel system by system call directly.

    Figure 2. The Logic Structure Diagram of Embedded Car

    The upper layer of the operating system is applicationsoftware layer. Application software provides a graphicaluser interface which can display the collected data captured

    by to the users selectively. And it pretreatment the collecteddata in the embedded side to reduce the wirelesstransmission work pressure and reduce the bottleneckscaused by hardware characteristics, improve work efficiency.

    Network send and receive program can receive data from thePC console and send the sensor collected data to the PCconsole.

    The middle part of Figure 1 is a wireless network device.This part can be a separate WIFI hotspot or a network nodedevice connected to LAN or Internet through WIFI. Nomatter what wireless transmission technology we finally

    adopted, communication effectiveness will be affected by thedistance constraints and obstacles interference. In order tosolve this problem, we adopted the solution as shown inFigure 3, in the remote control cars use environment, weconnect wireless router to LAN or Internet interconnectionequipment, at that time, PC console can use the unique IP tocommunicate with the embedded remote control car. Thiswill not only expand the communication distance betweenremote control car and PC console infinitely, but alsoachieve a console to control more than one remote controlcars.

    Figure 3. Wireless Communication Schematic Diagram

    The right side of Figure 1 is PC console. Due to thelimited of the size and hardware performance, the embeddedremote control car is insufficient simultaneously to give dualattention to the numerous and diverse data processing andthe motion control work. We transferred the task processing

    and control decision part to the PC console.PC has manyadvantages include low cost of hardware, processor capacitystrong, storage space large and we can use software toolswhich cant be used in the embedded equipment to do data

    processing and decision analysis, such as Matlab. Mobilerobot sent the collected data to PC for processing anddecision-making through wireless network and PC send theresults back to the mobile robot for executing. In anotherwords, complex control process and decision-making processis done by the PC, but not the mobile robot. In this way,Mobile Robot can do anything as long as it can be done onPC.Furthermore, no matter what kind of software tools andintelligent algorithms, as long as the PC can use, it can bedirectly applied in mobile robot application.This thoroughlysolved the problem that the mobile robot was constrained bytechnical background and usage in different application areaand greatly enhances the complexity of the task which low-cost mobile robot can complete.

    III. HARDWARE DESIGNThe hardware architecture of the main part of the system

    is shown in Figure 4. The embedded remote control carcircuit is exhibited in the right part of figure 4, using themini2440 development board produced by FriendlyARMcompany, the USB camera and USB wireless network card

    Remote Control Car 1

    Wireless

    Network

    Console

    Internet

    Console

    Remote Control Car 2

    Remote Control Car n

    Operating

    System Layer

    Qt Graphical User Interface

    Data Collection Programs

    Data Processing

    Programs

    Network Sending and

    Receiving Programs

    Application

    Software

    Layer

    Embedded Linux System

    Hardware Circuit

    LayerARM9 development board

    I/O Motion control circuit Motors

    888

  • 7/30/2019 06154250

    3/4

    are connected with the development board, the main controlboard also provides a plentiful high-speed peripheralinterfaces, GPIO interfaces and system bus interfaces for

    practical application increasing the variety of remote control

    car module, in specific circumstances, if needed. The leftpart of figure 4 shows the architecture of the motion controlcircuit, the board selected the Uptech Robotics MultiFlex

    board, as it uses ATmega128 MCU [4] as microcontroller,four groups with the PWM I/O interface control themovement of four driven wheels, each driven wheels isdriven by a DC brush motor. Motion control board provides7 analog input interfaces, 12 servo control interfaces, and 16GPIO interfaces. The motion control circuit communicatesthe main control circuits through the 5 Pin RS232 interface,the motion control programs is written through the ISPinterface.

    Figure 4. The Hardware Structure Diagram

    Main control board and motion control board have beendesigned separately benefits the optimization of embeddedremote control car allocating the hardware resources,connects the high-speed peripheral devices to the maincontrol board. In that case motion control and data

    acquisition would be accomplished simultaneously, and alsoenhances real-time capability of the remote control car.

    Motion Control Board is responsible for all sports-relatedwork, additional interfaces can be used for adding somerelated modules, which is depending on the specificapplications, such as equip electro-optical wheel axleencoders to achieve precisely motion control, it can alsoequips with ultrasonic sensors or infrared sensors forautomatic obstacle avoidance, perhaps the hand equipmentalso can be connected to the servo motor for the sake ofachieving other functions.

    IV. SOFTWARE SYSTEM DESIGNThe whole software system design is assembled by three

    parts [5]: the remote control cars main control program,motion control programs and PC console system program.To make some specific explanation, that the software systemwould be revised to demand of practical applications, inorder to illustrate the design of the wireless remote controlcar, here we use a universal process of embedded softwaredesign to describe it.

    The remote control car main program is an applicationprogram running on a Linux system which we have installedon the ARM9 development board, which mainly responsiblefor connection of the PC console, sending the collected data

    to the console, receiving the instruction of the PC Console,sending the motion related instructions to the motion controlcircuit.

    Figure 5. The Program Flow Diagram On Embedded Car Side

    Motion control program is taking in charge of all themotion control of the remote control car. The specific

    process is shown in Figure 5, after power on, thedevelopment board and motor control board begininitializing their own program, after the main control board

    setting up the IP address to connect with the console, itwould receive orders from the console to execute, throughthe Socket, if it is not a motion instructions (such as datacollecting, data sending, data preprocessing, etc.), then it

    performs the corresponding work, until the console has nomore requires available. The main control program sent themotion instruction to the motion control board throughUART, the motion control program caches them to a circularqueue, and read and execute the instructions during the fixeddefined time intervals.

    To ensure good portability and wide cross platformcapacity, we choose the Qt SDK to develop PC consolesystem program in the Linux system environments

    [6]. PC

    console provides a graphical user interface, after open the

    console, the program should be initialized, the operatorwould send some instructions after setting the basicparameters, presently receiving the data from embedded car,the information decision-making process based on actualneeds, in accordance with specific algorithms for data

    processing to generate decision-making instructions, andthen send them to the remote control car through the Socket[7]. In the situation of the no automatic decisions, the operatorcould send motion instructions to control the movement ofthe remote control car manually. When the task ends,

    Set IP

    Connect console

    Receive instruction

    Motion

    Command

    N

    Y

    Read instruction

    Execute instruction

    Continue

    Tasks

    Y

    N

    Execute instruction

    Initialize

    development board

    Initializecontrol board

    End

    Motion Control

    Circuit

    ARM9

    Development

    BoardUART

    Motor 1 Motor 2

    Motor 3 Motor 4

    USB Camera

    USB NIC

    889

  • 7/30/2019 06154250

    4/4

    disconnecting from the console connection with the remotecontrol car. The specific process is shown in Figure 6.

    Figure 6. The Program Flow Diagram Of PC Console

    V. SYSTEM TESTS

    Figure 7. Embedded Wireless Remote Control Car

    Figure 7 is the embedded remote control car. Afterplatform construction is completed, we integrated test thewhole system through a simple gesture recognitionexperiments. Figure 8 shows the interface of the systemconsole. Due to the obstacle refraction will affect thewireless signal strength the wireless communication distanceis approximate 13 meters indoor and about 180 meters

    outdoor in open area. Video frame rate is 8.62fps-13.16fps(as the wireless signal status). The average recognition timeof gesture recognition is 1.52 seconds, the system real-timewithin an acceptable range.

    VI. CONCLUSIONWe designed and implemented a wireless remote control

    car system based on ARM9 in this paper. And we suggesteda solution which ensures the last few tens of meterscommunication between the remote control cars through the

    secure wireless communications. We connected the remotecontrol car to Internet, transfer operations and decision-making center to an infinity distance server.This can breakthe robot platform hardware performance bottlenecks, and

    apply the complex, sophisticated algorithms of intelligentrobots to real life.Eventually, we verify the feasibility of thefinal design through a simple gesture recognitionexperiments. According to the actual needs, the algorithm inthe system can be extended to complete pattern recognition,automatic obstacle avoidance, motion planning, intelligentwireless monitoring and control and other fields ofapplication in real life.

    Figure 8. The GUI of System Console

    ACKNOWLEDGMENT

    The corresponding author is Zhao Hongwei. The authorsare grateful to the anonymous reviewers for their insightfulcomments which have certainly improved this paper.

    This work is supported by Science Foundation of JilinEducational Committee (2009605) and Plan for Scientificand Technology Development of Jilin Province (20101504).

    REFERENCES

    [1] Volker Graefe and Rainer Bischoff. From Ancient Machines toIntelligent Robots -A Technical Evolution[C]. The NinthInternational Conference on Electronic Measurement & Instruments.2009. Vol.3, 418-431.

    [2] Liggesmeyer P., Trapp M.. Trends in Embedded SoftwareEngineering[J]. IEEE Software, 2009, 26(3):19-25.

    [3] E. D. Lagnese and D. E. Thomas, Architectural partitioning forsystem level design[C], in Proc. 26th DAC. June 1989, 62-67.

    [4] ATMEL Corporation. ATmega128 Preliminary Summary [EB/OL].(2010-06-21) [2011-01-13].

    http://wenku.baidu.com/view/9a4bb6fb84 ae45c3b358c5d.html.[5] Kar-Keung D. Young, Yong Quan Ou, Lun Huai Cai, Jason Kam On

    Ho and Ken Kin Man Cheng. Real Time Embedded Control SystemDevelopment for Wireless Mobile Platforms[C]. IndustrialElectronics, 2008. ISIE 2008. IEEE International Symposium on.2008.11.18,2022-2027.

    [6] Jasmin Blanchette, Mark Summerfield. C++ GUI Programming withQt4(Second Edition) [M]. BeiJing: Electronic Industry Press.2010.4:11-12.

    [7] Alan Cox. Video4 Linux Programming[EB/OL]. (2000)[2011-01-20][email protected].

    Intelligent

    control

    Decisionmaking

    Generated

    instructions

    Disconnected

    Send

    instructions

    Connect

    remote car

    Send order

    Set parameter

    Receive image

    Process image

    YContinue

    task

    N

    Y

    N

    Initialization

    control

    End

    890