Design of APT control system for space optical communication based on ARM

Publisher:pi26Latest update time:2011-06-18 Keywords:ARM Reading articles on mobile phones Scan QR code
Read articles on your mobile phone anytime, anywhere
Space optical communication is a new type of communication technology that uses light waves as carrier waves to transmit information wirelessly in space. It has the advantages of high confidentiality, strong anti-interference, and high communication rate. It will play an important role in the field of wireless communication between satellites and satellites, and between satellites and ground control stations, and has broad application prospects. However, due to the narrow beam of light waves and the complex space environment, it is extremely difficult to establish a communication link. Therefore, for space optical communication, a set of acquisition, pointing and tracking (APT) system must be used to establish and maintain the optical communication link. Embedded systems have the advantages of high performance, low power consumption, and low cost, which makes their application in motion control very advantageous. Control systems based on ARM embedded processors have now been widely used. In view of the fact that current satellite communication terminals must have a series of characteristics such as high real-time performance, high integration, low power consumption, small size, and light weight, an APT control system based on ARM 7 embedded processor is proposed.

1 Composition of APT control system
The APT control system consists of PWM pulse control and generation module, RS 232 serial communication interface module, photoelectric encoding interface module and human-computer interaction module. The system block diagram is shown in Figure 1.

The core control chip is the dedicated industrial control ARM chip LPC2124 produced by Philips. The serial port first receives the light spot coordinate value obtained by the beacon light image processing part, calculates the output and the PWM control value through the position tracking algorithm, and then the PWM generation module sends the PWM pulse to the motor driver to drive the motor, and finally drives the turntable to the target position. The photoelectric encoder feeds back the motor speed information to the processor, and the corresponding control algorithm can be used to stabilize the running speed of the turntable at the set value to prevent the motor from being disturbed due to unstable speed. During the control process, the running status, speed and position of the turntable can be displayed on the LCD, and the running speed and scanning step of the turntable are set by keyboard input.


2 Hardware Design
2.1 Introduction to LPC2124 Processor
LPC2124 is based on a 32-bit ARM7TDMI-S CPU that supports real-time simulation and tracing. It is the world's first encrypted ARM chip and has 256 KWord embedded high-speed FLASH memory and 16 KB SRAM, which can fully meet the system storage space requirements, so no external storage expansion is required, making the system simpler and more reliable. It has many application components such as UART, hardware I2C, SPI, PWM, ADC, timer and comparison capture unit, which are very powerful and can far meet the functional design requirements of APT control system. 3.3 V and 1.8 V power supply voltage can keep the system low power consumption, 128-bit memory interface and unique acceleration structure can make 32-bit code run at the maximum clock rate, improve the code running speed, and the unique 16-bit Thumb mode can reduce the code size by more than 30%, while the system performance loss is very small, improve the code running efficiency, and greatly reduce the difficulty of program optimization. It is particularly suitable for industrial control, medical system and access control system.
2.2 Power supply circuit
The power supply voltage of the LPC2124 core and on-chip peripherals is 1.8 V, the voltage required by the I/O port is 3.3 V, and the power supply of the entire digital circuit is 5 V, and the 5 V power supply is stabilized by 78M05. Therefore, LDO chips LM1117MPX-3.3 and LM1117MPX-1.8 are selected to stabilize the output of 3.3 V and 1.8 V voltages. The circuit is shown in Figure 2.

2.3 RS 232 interface module
The coordinate value of the light spot is obtained through the serial port. Since the system chip is a 3.3 V system, MAX 3232 is used for RS 232 level conversion. The circuit schematic is shown in Figure 3.

[page]

The working mode and baud rate are set by setting the LPC2124 control registers U0LCR, UODLM and U0DLL.
2.4 JTAG interface circuit design
The standard 20-pin JTAG proposed by ARM is used as the simulation debugging interface. The definition of JTAG signals and the connection with LPC2124 are shown in Figure 4. In the figure, the signals nRST and nTRST on the JTAG interface are connected to the reset circuit of the entire system to achieve the purpose of resetting together with the control system.

2.5 Motor control and drive design
The output PWM cycle and duty cycle are set by setting the PWMMR0 and PWMMR6 registers of LPC2124 to control the running speed of the turntable. The motor drive adopts the DMD402 two-phase stepper motor driver, which can provide three operating modes: full step, half step, and 8-16 gear subdivision. In addition, the orthogonal encoding signal generated by the feedback of the photoelectric encoder is received by the comparison capture unit, and the current running speed of the motor is obtained after program processing, and then the speed is adjusted.
2.6 LCD display and keyboard design
The Chinese prompt interface is realized by using a dot matrix LCD display, which enhances the human-computer interaction. The design uses a 128×64 dot matrix LCD and uses the built-in T6963C as the controller. In addition, a 4×4 matrix keyboard is used as user input.

3 Software Design
The APT control system mainly consists of three parts: scanning, capturing and tracking. The following is an introduction to the program design of these parts.
3.1 Scanning and capturing part
After power-on reset, the program first completes the initialization of each part, displays the welcome interface, and prompts the user to enter the turntable running speed and scanning step length. Then the program starts to execute the grating spiral scanning algorithm. The schematic diagram of the grating spiral scanning algorithm is shown in Figure 5. Each small circle in the figure represents a beacon scanning sub-area, and each sub-area overlaps in a square manner. Assuming that the diameter of each sub-area is the beacon divergence angle α, the scanning step length is:

search for the target in the uncertain area with a step length of α0 until the beacon spot is captured, and then enter the tracking state.
3.2 Tracking algorithm based on incremental PID control
PID control algorithm includes position PID control algorithm and incremental PID control algorithm. Incremental PID control algorithm is commonly used in real-time control systems, and its formula is:

Where: △u(k) is the output control quantity; q0=KP; q1=KP(TS/TI); q2=KP(TD/TS) are the coefficients of comparison term, integral term and differential term respectively; TS is the sampling time. For different control systems, TS is different and should be determined based on actual debugging experience. In this experiment, TS is 0.15 s. It can be seen from formula (1) that as long as the three most recent error sampling values ​​e(k), e(k-1), and e(k-2) are stored, △u(k) can be calculated, thereby realizing feedback control of position and speed and completing stable tracking.
3.3 System flow chart
Based on the above analysis, the system flow chart can be obtained as shown in Figure 6.

4 Test results and conclusions
According to the experimental test, the maximum power consumption of the whole system is about 20 W, the rotation speed range of the turntable is 0.2~0.8 (°)/s, the tracking accuracy is calculated according to the standard deviation, the minimum is about 20.69μrad, and the fastest response time can reach 200 ms. The ARM chip LPC2124 produced by Philips is used as the control core for design and development. From the test results, it can be seen that the system power consumption is low, the accuracy basically meets the requirements of the APT control system, and has great practical value.

Keywords:ARM Reference address:Design of APT control system for space optical communication based on ARM

Previous article:Design and implementation of handheld multimedia system based on ARM Linux QT
Next article:Transplantation of μC/OS-Ⅱ on ARM Series MCU S3C44B0x

Recommended ReadingLatest update time:2024-11-17 01:31

ARM Linux development phase summary
Introduction: Since I started working on Linux, I have been looking for "HOWTO" articles on the Internet or in the library, but unfortunately there are not many. I also hope that my blog will become a "HOWTO" for the board I made, haha. But today I will not write a "HOWTO", but give a general summary of my work. Over
[Microcontroller]
What are the differences between ARM7 and ARM9 and the characteristics and differences between ARM, FPGA, and DSP?
1. Talk about the difference between ARM7 and ARM9: This article is written for beginners who are ready to learn ARM technology, but have not decided whether to learn ARM7 or ARM9 or do not know the difference between ARM7 and ARM9. I hope this article is useful to you. Due to my profession, I often answer questions
[Microcontroller]
ARM4412 bare board drives LED lights, buttons, and buzzers
First find the circuit diagram of the board, taking LED as an example Next is the circuit's network label: Find the register description in the corresponding chip manual The LED light is operated by operating the corresponding register: First, register the corresponding register address into a file: reg.h   1
[Microcontroller]
ARM4412 bare board drives LED lights, buttons, and buzzers
21. Learn ARM from scratch - Why is using structures more efficient? This article will explain it to you in detail
As a person who has been through this, I have found that many novice programmers, when writing code, particularly like to define many independent global variables, rather than encapsulating these variables into a structure. The main reason is for convenience. However, you should know that this is actually a bad habit
[Microcontroller]
21. Learn ARM from scratch - Why is using structures more efficient? This article will explain it to you in detail
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 bare metal program - Marquee
I recently read some boot code analysis, and there are still many things I don't understand. I plan to write about boot code analysis later. I first ran some bare metal programs without an operating system to familiarize myself with the hardware. The development board used is FL2440. Let's look at this piece of C code
[Microcontroller]
A brief discussion on the difference between avr and arm
  AVR:   AVR microcontroller is an enhanced RISC (Reduced InstrucTIon Set Computer) high-speed 8-bit microcontroller with built-in Flash developed by ATMEL in 1997. AVR microcontrollers can be widely used in various fields such as computer peripherals, industrial real-time control, instrumentation, communication equi
[Microcontroller]
A brief discussion on the difference between avr and arm
15. ARM processor startup process
The ARM processor startup process involves three aspects of knowledge: Startup method Address layout Start the process The boot process of the S3c2440 ARM processor: 2440 Support Nor Flash boot, Nor Flash size 2MB Nand Flash boot, Nand Flash size 256MB So
[Microcontroller]
15. ARM processor startup process
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号