PERFORMANCE COMPARISON OF ARM CORTEX M3 AND M4 BASED PROCESSORS FOR SENSOR DATA ACQUISITION AND PROCESSING FOR MAV

Similar documents
An inertial haptic interface for robotic applications

Hand Gestures Remote Controlled Robotic Arm

A 5 Degree Feedback Control Robotic Arm (Haptic Arm)

A highly integrated UAV avionics system 8 Fourth Street PO Box 1500 Hood River, OR (541) phone (541) fax CCT@gorge.

Hardware In The Loop Simulator in UAV Rapid Development Life Cycle

The Design and Implementation of a Quadrotor Flight Controller Using the QUEST Algorithm

AP Series Autopilot System. AP-202 Data Sheet. March,2015. Chengdu Jouav Automation Tech Co.,L.t.d

SIX DEGREE-OF-FREEDOM MODELING OF AN UNINHABITED AERIAL VEHICLE. A thesis presented to. the faculty of

CHAPTER 1 INTRODUCTION

VTOL UAV. Design of the On-Board Flight Control Electronics of an Unmanned Aerial Vehicle. Árvai László, ZMNE. Tavaszi Szél 2012 ÁRVAI LÁSZLÓ, ZMNE

Onboard electronics of UAVs

Raghavendra Reddy D 1, G Kumara Swamy 2

Visual Servoing using Fuzzy Controllers on an Unmanned Aerial Vehicle

AUTOPILOT QUICK START GUIDE

FRC WPI Robotics Library Overview

Basic Principles of Inertial Navigation. Seminar on inertial navigation systems Tampere University of Technology

Author: By Siegfried Krainer and Michael Thomas, Infineon Technologies and Ronald Staerz, MCI Innsbruck

All Programmable Logic. Hans-Joachim Gelke Institute of Embedded Systems. Zürcher Fachhochschule

Development of Knowledge-Based Software for UAV Autopilot Design

How To Control Gimbal

TI GPS PPS Timing Application Note

ZMART Technical Report The International Aerial Robotics Competition 2014

Original Research Articles

Digital Systems Based on Principles and Applications of Electrical Engineering/Rizzoni (McGraw Hill

0 28 November 2011 N/A First Release of Manual 1 24 February 2012 Page 21 Error in FY31AP connection diagram corrected.

Development of Automatic shooting and telemetry system for UAV photogrammetry INTRODUCTION

Communication Management Unit : Single Solution of Voice and Data Routing Unit

Control of a quadrotor UAV (slides prepared by M. Cognetti)

Vehicle Tracking and Monitoring By ARM7

PLC Based PV Module Tracking with Microcontroller Backup

Vibration Measurement of Wireless Sensor Nodes for Structural Health Monitoring

Open Architecture Design for GPS Applications Yves Théroux, BAE Systems Canada

EasyC. Programming Tips

REAL TIME TRAFFIC MONITORING SYSTEM AND DRIVER ASSISTANCE

Driving Embedded Innovation with ARM Ecosystem

Networking Remote-Controlled Moving Image Monitoring System

LEGO NXT-based Robotic Arm

STM32L. Ultra-low-power Cortex -M3 devices

An internal gyroscope minimizes the influence of dynamic linear acceleration on slope sensor readings.

2.0 Command and Data Handling Subsystem

Autonomous Navigated Global Positioning System Based Surveillance Unmanned Aerial Vehicle

Reconfigurable System-on-Chip Design

The Design of DSP controller based DC Servo Motor Control System

Hardware Connections between Arduino and IMU Nori Wilkins Apr. 5, 2013

Android based Secured Vehicle Key Finder System

Chapter 6 Lateral static stability and control - 3 Lecture 21 Topics

Application Note IMU Visualization Software

PROJECT PRESENTATION ON CELLPHONE OPERATED ROBOTIC ASSISTANT

IEEE Projects in Embedded Sys VLSI DSP DIP Inst MATLAB Electrical Android

INTRODUCTION TO SERIAL ARM

Automated Security System using ZigBee

DESIGN AND IMPLEMENTATION OF ONLINE PATIENT MONITORING SYSTEM

International Journal of Science Engineering and Advance Technology, IJSEAT, Vol 2, Issue 11

Quick Start Guide. TWR-MECH Mechatronics Board TOWER SYSTEM

System Design Issues in Embedded Processing

dspace DSP DS-1104 based State Observer Design for Position Control of DC Servo Motor

Dedalus autopilot User's manual

DESIGN FOR MONITORING AND OPTIMIZATION OF POWER DEMAND FOR WIRELESSLY COMMUNICATING ELECTRIC LOADS

SMART DRUNKEN DRIVER DETECTION AND SPEED MONITORING SYSTEM FOR VEHICLES

Dedalus autopilot user's manual. Dedalus autopilot User's manual. Introduction

MP2128 3X MicroPilot's. Triple Redundant UAV Autopilot

Degree programme in Automation Engineering

An Embedded Based Web Server Using ARM 9 with SMS Alert System

Design of a Wireless Medical Monitoring System * Chavabathina Lavanya 1 G.Manikumar 2

Keywords: GPS, GSM, AVR Microcontroller, SMS.

DESIGN OF 6 DOF ROBOTIC ARM CONTROLLED OVER THE INTERNET

Intelligent Home Automation and Security System

Collided Vehicle Position Detection using GPS & Reporting System through GSM

International Journal of Software and Web Sciences (IJSWS) GPS and GSM Based Database Systems for User Access

Cypress Semiconductor: Arduino Friendly PSoC Shield

CONTRIBUTIONS TO THE AUTOMATIC CONTROL OF AERIAL VEHICLES

Flight Controller. Mini Fun Fly

Android Phone Controlled Robot Using Bluetooth

GPS & GSM BASED REAL-TIME VEHICLE TRACKING SYSTEM.

Using Arduino Microcontrollers to Sense DC Motor Speed and Position

Design and Implementation of an Accidental Fall Detection System for Elderly

SIVAQ. Manufacturing Status Review

Design and Implementation of Home Monitoring System Using RF Technology

Serial port interface for microcontroller embedded into integrated power meter

ANDROID LEVERED DATA MONITORING ROBOT

Room Temperature based Fan Speed Control System using Pulse Width Modulation Technique

Embedded Systems on ARM Cortex-M3 (4weeks/45hrs)

Design Specifications of an UAV for Environmental Monitoring, Safety, Video Surveillance, and Urban Security

Information regarding the Lockheed F-104 Starfighter F-104 LN-3. An article published in the Zipper Magazine #48. December Theo N.M.M.

CYCLOPS OSD USER MANUAL 5.0

HIGH SECURED VEHICLE WITH INTERIOR VENTILATION CONTROL AND PERIMETER MONITORING SYSTEM

Sensor Fusion Mobile Platform Challenges and Future Directions Jim Steele VP of Engineering, Sensor Platforms, Inc.

STM32 F-2 series High-performance Cortex-M3 MCUs

The BSN Hardware and Software Platform: Enabling Easy Development of Body Sensor Network Applications

Eric Mitchell April 2, 2012 Application Note: Control of a 180 Servo Motor with Arduino UNO Development Board

Bluecoin - Voice and Music Over an Embedded BLE Platform. Central Labs AST Robotics

A Design of Video Acquisition and Transmission Based on ARM. Ziqiang Hao a, Hongzuo Li b

A Multipurpose Vehicle Tracking System Based on ARM CORTEX-M3 STM32, HMC5883L, MPU-6050, GSM and GPS

Research Methodology Part III: Thesis Proposal. Dr. Tarek A. Tutunji Mechatronics Engineering Department Philadelphia University - Jordan

STEPPER MOTOR SPEED AND POSITION CONTROL

A Surveillance Robot with Climbing Capabilities for Home Security

Transcription:

International Journal of Electronics and Communication Engineering & Technology (IJECET) Volume 6, Issue 7, July (2015), pp. 08-16, Article ID: Article ID: 40120150607002 Available online at http://www.iaeme.com/currentissue.asp?jtype=ijecet&vtype=6&itype=7 ISSN Print: 0976 6464 and ISSN Online: 0976 6472 IAEME Publication PERFORMANCE COMPARISON OF ARM CORTEX M3 AND M4 BASED PROCESSORS FOR SENSOR DATA ACQUISITION AND PROCESSING FOR MAV Pankaj Akula Scientist, ALD, CSIR-NAL, Bangalore, Karnataka, INDIA Ajith Kumar P. Shetty School of Electronics Engineering, VIT University, Vellore, Tamilnadu, INDIA Mamata Hegde Visveswaraya Technological University, Belgaum, Karnataka, INDIA. Dr. C.M. Ananda HOD, Principal Scientist, ALD, CSIR-NAL, Bangalore, Karnataka, INDIA ABSTRACT The performance of a Flight Controller is dependent on the acquisition time and processing speed of the microcontroller. The paper discusses the usage of the Cortex M3 based processor PSoC5 and cortex M4 based processor STM32F4 for sensor data acquisition and processing. The Flight Controller comprises of Global Positioning System (GPS), Sensor suite, external flash for data logging, and Pulse Width Modulation (PWM) to control aileron, rudder and elevator surfaces of Micro Aerial Vehicle (MAV). The paper summarizes the acquisition and performance comparison of the two processors PSoC and STM32F4. Keywords: Cortex M3, Cortex M4, PSoC, MAV and STM32F4. Cite This Article: Pankaj Akula, Ajith Kumar P. Shetty, Mamata Hegde and Dr. C.M. Ananda, Performance Comparison of ARM Cortex M3 And M4 Based Processors For Sensor Data Acquisition And Processing For Mav. International Journal of Electronics and Communication Engineering & Technology, 6(7), 2015, pp. 08-16. http://www.iaeme.com/currentissue.asp?jtype=ijecet&vtype=6&itype=7 http://www.iaeme.com/ijecet.asp 8 editor@iaeme.com

Performance Comparison of ARM Cortex M3 and M4 Based Processors For Sensor Data Acquisition and Processing For MAV 1. INTRODUCTION The growth in the development of Micro Aerial Vehicles (MAVs) has been increasing over the past years.modern MAVs are airborne robotic systems controlled by flight control board [1].It comprises of sensors, interfaces and microcontrollers. The applications of MAVs have become broader i.e., not limited to military applications. The present day MAVs support various civil missions such as weather observation, enemy surveillance and traffic monitoring [2]. Flight Controller is a highly optimized set of inertial and air data sensors and GPS to achieve fully autonomous mission capabilities from take-off to landing. MAVs depend on Flight Controller for its navigation and orientation. TheFlight Controller controls the aerial vehicle along the three axes i.e., Pitch, Roll and Yaw [3]. A Flight controller consists of an Inertial Measurement Unit (IMU) for sensing aircraft attitude, a Global Positioning System (GPS) unit for navigation, telemetry unit for data collection, as well as a microcontroller for data processing [4]. Present day flight controllers have the capability to control the movement of the aircraft without constant control by a human operator. MAV is automatically controlled using an embedded computing device called Flight Control Systems [5]. The Flight Controller hosts the flight control law for the aircraft. The performance of the Flight Controller depends on the acquisition and processing times from sensors [6]. Hence an attempt is made in this paper to find the best controller in terms of acquisition and processing time. The timing requirement is achieved by proper scheduling between the tasks [7]. Figure1 shows the complete operational overview of the Unmanned Arial Vehicle which includes an aircraft, Ground Control Station (GCS) and a Radio Control (RC) joystick. For the present exercise, open source GCS Mission Planner from Ardu is used. RC joystick is used to control the flight movement. The tools, techniques and devices which are used to compare the performance of the ARM Cortex M3 and M4 based flight controllers are being discussed here. Fig.1.Operational Overview http://www.iaeme.com/ijecet.asp 9 editor@iaeme.com

Pankaj Akula, Ajith Kumar P. Shetty, Mamata Hegde and Dr. C.M. Ananda 2. ARCHITECTURE OF THE SYSTEM Proposed system mainly comprises of a Microcontroller, Inertial Measurement Unit (IMU), Global Positioning System (GPS) and external flash memory. Controller is mainly responsible to perform these tasks. Communicating with sensor suite for data acquisition [Motion Processing Unit, Magnetometer and GPS]. Storing data on to flash. PWM signal generation for servo motor controlling. A three axis accelerometer is used to detect and measure the current magnitude of acceleration, three axis gyroscopes is used to detect changes in rotational attributes like pitch, roll and yaw with proper estimators and a three axis magnetometer is used to measure the earth s magnetic field. The GPS receiver provides tracking capabilities with position and speed. Design and development of Flight Controller using STM32F4 and Programmable System on Chip (PSoC5) as core element is experimented. Goal of this paper is to compare the performance of PSOC5 based Flight Controller with STM32F4 based controller and provide some insights into further reduction of access time based on Phase Locked Loop (PLL) optimisation settings for STM32F4.Design of same Flight Controller application code with different cores (cortex M3 and Cortex M4) is being discussed here. Hardware Architecture PSoC-5 is ARM cortex M3 based controller and has supporting hardware such as reconfigurable Universal Digital Blocks (UDB), reconfigurable routing and interconnects. Programmable blocks make PSoC distinct from other Microcontroller Units (MCU s). Figure 2 depicts the system architecture of PSoC based Flight Controller. STM32F4 microcontroller includes ARM cortex M4 as core with additional hardware improvements such as Floating Point Unit (FPU), Adaptive Real Time memory accelerator (ART accelerator). Figure3 depicts the block diagram of Flight Controller using STM32F4. PSOC5 IMU ACCELEROMETER MAGNETOMETER GYROSCOPE I2C CORTEX M3 67MHz 256KB FLASH PWM OUTPUT TO SERVO MOTOR (CONNECTED TO WING SURFACE) GPS UART 64KB SRAM SPI FLASH(1 Gbit) POWER MANAGEMENT UNIT POWER SUPPLY Fig. 2.System architecture of PSoC 5 based flight controller. http://www.iaeme.com/ijecet.asp 10 editor@iaeme.com

Performance Comparison of ARM Cortex M3 and M4 Based Processors For Sensor Data Acquisition and Processing For MAV STM32F4 IMU ACCELEROMETER MAGNETOMETER GYROSCOPE I2C CORTEX M4 + FPU 168MHz 1MB FLASH PWM OUTPUT TO SERVO MOTOR (CONNECTED TO WING SURFACE) GPS UART ART CACHE 192KB SRAM SPI FLASH(1 Gbit) POWER MANAGEMENT UNIT POWER SUPPLY Fig. 3. Block Diagram of STM32F4 based Flight Controller. Software Architecture Software architecture is divided into developing device drivers for sensor suite (data acquisition), code for data logging on to the flash and PWM signal generation for servo motor control. Application software for Flight Control is written in C language. STM32F4Microcontroller Unit (MCU) uses Keil Integrated Development Environment (IDE) and PSoC-5 uses PSoC Creator IDE. Software architecture for both PSoC and STM32F4 shown in the Figure 4 Fig. 4.Software Architecture Data Acqisition Application: It is the function of reading data from sensor suite.gps provide position information such as longitude,latitude and altitude. IMU provide state information such as angular rates and accelration. Data Log Application: This process is responsible for writing flight data on to flash for offline analysis as part of flight testing or operational requirements. PWM signal generation: PWM signal is used to control the rotation of the servomotors shaft. Position of the shaft is determined by the width of PWM signal. http://www.iaeme.com/ijecet.asp 11 editor@iaeme.com

Pankaj Akula, Ajith Kumar P. Shetty, Mamata Hegde and Dr. C.M. Ananda To achieve optimum performance out of ARM cortex M4, STMicroelectronics has developed ART accelerator, which is a micro controller system like cache controller tailored to the needs of programs executing from flash. Because of ART accelerator, execution speed will be increased by around 2.5% due to zero wait state memory. The most noticeable difference between ARM Cortex M3 and M4 is the optional single precision (IEEE-754) Floating Point Unit (FPU) which is available with the ARM Cortex M4. Table 1. Comparison of Environment between STM32F4 and PSOC5 based Flight Controllers. S.No Part Name STM32F4 based configuration PSoC5 based configuration Hardware 1 Processor STM32F4 PSoC5 LP 2 Accelerometer MPU 9150 MPU9150 3 Gyroscope MPU9150 MPU 9150 4 Magnetometer HMC5883L HMC5883L 5 GPS 3DR MTK 2.0 3DR MTK 2.0 6 Flash Spansion NOR 1 Gbit Spansion NOR 1 Gbit Software 1 IDE Keil PSoC Creator 2 Application Software Language Embedded C Embedded C 3. METHODOLOGY The Flight Control System which is present in a MAV is capable of acquiring the data from all the sensors and stores them in the flash. This paper mainly focuses on performance comparison of ARM Cortex M3 and M4 based Flight Control System for the sensor data acquisition and processing time for the estimator algorithm. Proposed system includes MCU with the sensor suites. The accelerometer and gyroscope integrated in the Motion Processing Unit provides state information, while magnetometer and GPS serve to provide magnetic field information and location coordinates. The data from the sensors are acquired and given to the attitude estimator which works based on the principle of Kalman Filter. The output is then used in order to calculate aircraft attitudes with other flight parameters and stored in the flash. Further the pitch, roll and yaw angles are compared with the input range values. If there is any deviation in the angle detected or the change in same, The Flight Control System detects the change and generates the Pulse Width Modulated (PWM) signal accordingly based on its variation. It will be then directed to the servo motor connected to the control surface in order to control the principal axis of the flight i.e., the ailerons, rudder and elevators. The process flow is shown in the Figure 5. http://www.iaeme.com/ijecet.asp 12 editor@iaeme.com

Performance Comparison of ARM Cortex M3 and M4 Based Processors For Sensor Data Acquisition and Processing For MAV STEP 1 Initialize the Sensors STEP 2 Reading data from IMU, BMP, Magnetometer STEP 3 Sending data into NCF estimator STEP 4 Compute the state estimates from the NCF STEP 5 Storing data in the flash Fig. 5.Program Flow for the above explaned block diagram. 4. EXPERIMENTAL RESULTS Figure 6 shows the experimental setup of the fight controller which includes PSoC5 development kit, Inertial Measurement Unit, Magnetometer, GPS with Logic analyser. The data from sensors has been acquired with developed application software and processed in PSoC controller using attitude estimator to get Attitude information. The data acquisition and processing time has been analysed and result is presented in Table 2 and Table 3. Fig. 6. Experimental setup using PSoC5. Figure 7 shows the experimental setup of the Fight Controller which includes STM32F4 evaluation with Logic Analyser. http://www.iaeme.com/ijecet.asp 13 editor@iaeme.com

Pankaj Akula, Ajith Kumar P. Shetty, Mamata Hegde and Dr. C.M. Ananda Fig. 7. Experimental setupusing STM32F4. Comparison of read timefor the two different sensors and Execution time of the attitude estimator inboth STM32F4 and PSOC5 based flight controller are presented. The PSoC5 supports up to 67MHz of clock frequency and STM32F4 supports up to 168MHz Fig. 8. PLL clock settings using STMCubeMX http://www.iaeme.com/ijecet.asp 14 editor@iaeme.com

Performance Comparison of ARM Cortex M3 and M4 Based Processors For Sensor Data Acquisition and Processing For MAV Table 2. Comparison of performances between STM32 and PSOC 5 Flight Controllers Sensor 1. Accelerometer + Gyroscope 2. Magnetometer 3. Pressure Sensor Read time for STM32F4 (Cortex M4) based Flight Controller (in ms) 1.7972 0.9333 8.6146 Read time for PSOC5 (Cortex M3) based Flight Controller (in ms) 2.55 1.516 8.976 Table 3 and Table 4 shows the comparison of read time and execution time of different sensors and Attitude Estimator respectively for STM32F4 and PSOC5 based Flight Controller. Due to the increase in the clock frequency as discussed above, the performance of STM32F4 based Flight Controller is better than PSoC5 based Flight Controller. Table 3. Comparison of Execution time of Attitude Estimator between STM32 and PSoC5 based Flight Controller. Function Execution time for STM32F4 (Cortex M4) based Flight Controller (in ms) Execution time for PSOC (Cortex M3) based Flight Controller (in ms) Attitude Estimator 0.6192 3.46 Figure 8 shows clock configuration of STM32F4 using STMCubeMX. By changing the prescaler values (i.e. M, N and P), the PLL clock configuration has been done. Still reduced read time and execution time can be encountered after performing PLL customization is as shown in the Table 4 and Table 5. Table 4. Read time for STM32 Flight Controllers after PLL optimisation Sensor 1. Accelerometer + Gyroscope 2. Magnetometer 3. Pressure Sensor Read time for STM32F4 (Cortex M4) based Flight Controller(in ms) 0.4713 0.2687 8.6050 Table 5. Execution time of Attitude Estimator for STM32 Flight Controller after PLL optimisation. Function Execution time for STM32F4 (Cortex M4) based Flight Controller(in ms) Attitude Estimator 0.3250 http://www.iaeme.com/ijecet.asp 15 editor@iaeme.com

Pankaj Akula, Ajith Kumar P. Shetty, Mamata Hegde and Dr. C.M. Ananda The computing power of cortex M3 and M4 is 1.25(Dhrystone Million Instructions per Second) DMIPS/MHz but frequency capability is different. The supported clock frequency of PSoC5 and STM32F4 translates into higher DMIPS capability for STM32F4. 5. CONCLUSION The paper has discussed the implementation and characterization of STM32F4 and PSOC based flight controllers using the configuration as described. The improvement in access time by using STM32F4 compared to PSoC and further improvement in STM32F4 by using appropriate PLL settings has been discussed. 6. ACKNOWLEDGEMENT Author would like to thank Mr. Shyam Chetty, Director NAL for continuous support and motivation. Authors also would like to thank Mr. Pavan Kumar, Ms.Swetha, Mr. Sharath and team of NALMETF for their support in testing and integration of Autopilot System. REFERENCES [1] El-Sayed, A.; ElHelw, M., "Distributed component-based framework for Unmanned Air Vehicle systems," Information and Automation (ICIA), 2012 International Conference on, vol., no., pp.45,50, 6-8 June 2012 [2] JinLin Hu; ShangyouZeng; Zhengzhen Zhang, "The Design of Wireless Data Acquisition System Based on STM32F4 and Virtual Instrument," Wireless Communications, Networking and Mobile Computing (WiCOM), 2012 8th International Conference on, vol., no., pp.1,4, 21-23 Sept. 2012 [3] He Shen; YunjunXu; Remeikas, C., "Pressure sensor array based nonlinear robust pitch control for small or micro aerial vehicle," American Control Conference (ACC), 2012, vol., no., pp.1732,1736, 27-29 June 2012 [4] Wang Hua-jie; Su Juan, "The Design and Research of Infrared Sensor Monitoring System Based on STM32F4," Computational and Information Sciences (ICCIS), 2012 Fourth International Conference on, vol., no., pp.876,879, 17-19 Aug. 2012 [5] Winkler, S.; Buschmann, M.; Kruger, L.; Schulz, H.-W.; Vorsmann, P., "Multiple Sensor Fusion for Autonomous Mini and Micro Aerial Vehicle Navigation," TENCON 2005 2005 IEEE Region 10, vol., no., pp.1,6, 21-24 Nov. 2005 [6] JinjunRao; TongyueGao; Zhen Jiang; Zhenbang Gong, "Flight control system of a robotic portable unmanned aerial vehicle," Advanced Computer Control (ICACC), 2010 2nd International Conference on, vol.1, no., pp.540,544, 27-29 March 2010 [7] Pastor, E.; Lopez, J.; Royo, P., "An Embedded Architecture for Mission Control of Unmanned Aerial Vehicles," Digital System Design: Architectures, Methods and Tools, 2006. DSD 2006. 9th EUROMICRO Conference on, vol., no., pp.554,560, 0-0 0 http://www.iaeme.com/ijecet.asp 16 editor@iaeme.com