The project I built is a remotely controlled security robot equipped with the ability to transmit images, serving as an efficient and innovative tool for security systems. The ability to control the robot remotely allows for quick and efficient action, with security personnel able to establish an immediate response to events in real-time. The robot serves as the “eyes” of a security system and provides a detailed real-time image from the field, which can lead to the identification of risks and threats, neutralization of certain situations, and effective and safe management of emergency situations. The ability to transmit real-time images allows security personnel to have a real-time view of the reality in the field and enables a higher capability for response and efficient monitoring of various areas and events while ensuring the safety of the operator.
Our project allows performing various actions by connecting to a user/operator interface, such as remote viewing through the camera located on the robot, moving the robot in 10 different directions, and changing the camera angle in space.
To implement the idea, I used four different components – an FPGA (Field-Programmable Gate Array) controller, model 10DE Altera, a 32ESP microcontroller, a user interface on the site, and a robot platform with 4 wheels. The FPGA controller’s main programming language is VHDL (Very High-Speed Integrated Circuit Hardware Description Language), which communicates with the 32ESP microcontroller that transfers the data to the server in real-time – Firebase, and to the user interface and the main controller where the signal processing and transmission to the desired component take place.
Architecture
Top and bottom
Wire-Wrap
User interface
The user interface that was developed allows viewing the image received in real-time from the robot, enables control over the driving directions and speed, control over the camera angle, and receiving alerts about obstacles and their proximity on the way.
Real-time Database
Real-time database located in the cloud and provided by Google as part of the Firebase platform, designed to store and synchronize data in real-time between different applications.
In our project, we used the Firebase server to send data through the ESP32 microcontroller to the Altera using the user interface and to receive data from the Altera and the camera through the ESP32 microcontroller to the user interface.
Conclusion
The purpose of the project was to deepen the knowledge acquired during the degree program and gain practical experience in building a multidisciplinary system that contains a large number of components that affect each other. To perform the project, we needed to learn hardware description language and various software languages, read and create electrical schematics, conduct independent research, acquire many skills, and more. Throughout the project, we learned and discovered how complex it is to implement a seemingly simple idea when we encountered soft failures when connecting different components and integrating hardware with software. The project gave us a broad systemic view, understanding, and handling of a variety of challenges.