| These days, as the demand for service staff and the cost of manpower increasing,servo robot is becoming more and more meaningful because it can help to relievepeople from heavy work. However, there are some shortcomings of traditional robots,such as complex control system, lack of scalability, high design difficulties and longdevelopment cycle. This servo robot is designed based on Zynq provided by Xilinxcompany. It is designed for office environment. Using the configuration of FPGA, thedesign of servo robot has good scalability; and setting up ARM+Linux developmentenvironment makes the development of servo robot easier and development cycleshorter.This system applied embedded Linux operating system, intelligent control, voicerecognition, face recognition and character recognition technology. This servo robotowns rich functions and friendly human-computer interaction.This paper focus on extending hardware modules based on FPGA, developpingcorresponding drivers and adding the drivers into Linux kernel, developping andtransplanting Linux applications, developping Android application. The main contentsof this paper are as follows:①Build platform, including hardware platform and software platform. In theprocess of building the hardware platform, we need to add PS IP core, AXI bus moduleand clock module to the hardware project. Then we generate bitstream and downloadthe bitstream into FPGA. In the process of building the software platform, we need tobuild cross-compiler tool, compile U-boot, compile Linux kernel and device tree, makeroot file system, at last we bootup the Linux kernel on the hardware platform.②FPGA logic design, according to the functional requirements of the servo robotand the existing modules on Zynq-7000platform, we need to develop new hardwaremodules. FPGA is configurable, we develop SPI controller, ultrasonic wave module,PWM driver, ADAU1761controller, serial port and PWM motor controller.③Driver design, we need to develop drivers for the new developped hardwaremodules. Therefore, we developed SPI driver, ultrasonic module driver, serial portdriver, ADAU1761controller driver, serial port driver and PWM driver.④Develop and transplant Linux applications. To realize basic functions of servorobot, we developed Socket communication program to communicate with the Android application, developed a face detection program that can detect human faces. At themeanwhile, we transplanted Web server, Mjpg-streamer, voice recognitionsoftware—Sphinx and character recognition software—tesseract.⑤Develop Android application. Through Android application, we can controlrobot’s speed and direction. We can also use the Android application to controlultrasonic wave module and receive image or video from robot when it visits theconference room.The test results show that this servo robot can send images or videos to the Androidsmart phone when it visits conference rooms. The servo robot can also take coffee topeople. It can detect people’s face and sort letters. It can understand commands fromvoice and Android smart phone. The servo robot has friendly human-computerinteraction and is very useful. It has good development prospects and broad applicationprospects. |