Ethical Guidelines

University of Illinois trained engineers are the best and most highly sought in the world. Our graduates are superbly trained, highly competent, and creative. This, however, is not enough. Our engineers must also be trusted to conduct themselves according to the highest ethical standards. All teams must address ethical considerations in their projects. This requirement has two parts.

First, there is a stringent Code of Ethics published by professional societies, such as IEEE and ACM. The power of these Codes of Ethics is to provide guidance to engineers in decision making and to lend the weight of the collective community of engineers to individuals taking a stand on ethical issues. Thus the Code of Ethics both limits the professional engineer and empowers the professional engineer to stand firm on fundamental ethical bedrock. All teams must read the IEEE code and ACM code and comment on any sections of the code that bear directly on the project.

Second, we expect our students to have personal standards of conduct consistent with the IEEE and ACM Codes of Ethics, but also beyond it. That is, there are areas of ethics not addressed by these Codes that the engineer may consider in taking on projects or jobs or making other professional decisions. These are personal standards and choices. In the context of the class, there are no right or wrong answers here. Our students simply need to demonstrate that they are thinking deeply about their own decisions and the consequences of those decisions. We encourage our students to consider the wider impact of their projects and address any concerns raised by potential uses of the project. Students should ask themselves, "Would I be comfortable having my name widely attached to this project? Do I want to live in a society where this product is available or widely used? Would I be proud of a career dominated by the decision making demonstrated here?" Remember that UIUC engineers have a long history of inventions that really has changed the world.

If the students feel that these Codes of Ethics does not directly bear on their project and that there are no other reasonable concerns, they should not invent issues where there are none. Students will still be expected to be familiar with the IEEE Code of Ethics and ACM Code of Ethics.

High Noon Sheriff Robot

Yilue Pan, Shuting Shao, Yuan Xu, Youcheng Zhang

Featured Project


- Yuan Xu [yuanxu4]

- Shuting Shao [shao27]

- Youcheng Zhang [yz64]

- Yilue Pan [Yilvep2]




Nowadays with the increasing number of armed attacks and shooting incidents. The update for public places needs to be put on the agenda. Obviously, we could not let police and security to do all the jobs since humans might neglect some small action of threat behind hundreds of people and could not respond quickly to the threat. A second of hesitation might cost an innocent life. Our team aims on making some changes to this situation since nothing is higher than saving lifes not only victims but also gunners. We find some ideas in the Old western movies when two cowboys are going to a high noon duel, the sheriff will pull out the revolver quicker than the other and try to warn him before everything is too late. If we can develop a robot that can detect potential threats and pull out weapons first in order to warn the criminal to abandon the crime or use non-lethal weapons to take him down if he continues to pull out his gun.


In order to achieve effective protection in a legal way, we have developed the idea of a security robot. The robot can quickly detect dangerous people and fire a gun equipped with non-lethal ammunition to stop dangerous events.

The robot should satisfy the following behavioral logic:

- When the dangerous person is acting normally and there is no indication of impending danger, the robot should remain in standby mode with its robot arm away from the gun.

- When the dangerous person is in a position ready to draw his gun or other indication of dangerous behavior, the robot is also in a drawn position and its arm is already clutching the gun.

- When the dangerous person touches his gun, The robot should immediately draw the gun, move the hammer and finish aiming and firing to control the dangerous person. This type of robot would need to include three subsystems: Detection system, Electrical Control system, and Mechanical system.



This subsystem consists of a camera and PC. We are going to use YOLO v5 to detect object, determine the position of human and the gun. Use DeepSORT to track the object, let the camera follow the opponent. Use SlowFast to detect opponent’s behavior.


This subsystem consists of a STM32, two high speed motors, two gimbal motors, one motor for revolver action and position sensor. The STM32 serves as the controller for the motors. The high speed motor will be used to move the mechanical grab to grab the revolver and pull it out as fast as possible so that it will use the position sensor as the end stop point instead of PID control. The gimbal motors serve as Yaw and Pitch motion for the revolver to control the accuracy of the revolver so that it needs encoders to give the angle feedback.


This subsystem consists of a three-degree-of-freedom robot arm and a clamping mechanism fixed to the end of the arm. The clamping mechanism is used to achieve the gripping of the gun, the moving of the hammer and the pulling of the trigger. The mechanical arm is used to lift and aim the gun.


- Move Fast. The robot must draw its gun and aim faster than the opponent;

- Warning First. If opponent’s hand moves close to the gun on his waist, the robot should draw the gun and aim it at the opponent without firing. If the opponent gives up drawing a gun and surrender, the robot should put its gun back in place. Otherwise, the robot will shoot at the opponent.

- Accurate shooting. Under the premise that the opponent may move, the robot must accurately shoot the opponent's torso.


- EE Student Shuting Shao: Responsible for object detection and object tracking.

- EE Student Yuan Xu: Responsible for behavior detection and video processing.

- EE Student Youcheng Zhang: Responsible for electrical control system.

- ME Student Yilue Pan: Responsible for the Mechanical system.