automated targeting proximity turret group 17 group members: hector colon, adam horton, kyle...
TRANSCRIPT
Automated Targeting Proximity Turret
Group 17
Group Members:Hector Colon, Adam Horton, Kyle Steighner, and Nicholas Yielding
University of Central Florida
Goals and Objectives
Turret acknowledges that an intruder has entered the field of view
Turret warns the intruder to leave the area by an audible alarm once a certain perimeter distance has been reached
If the intruder reaches a closer perimeter distance instead of leaving, the turret will fire upon them
While all of these processes are going on, the turret continuously tracks the intruder
Provide persistant engagement history on an off-board server and allow manual control of the turret.
University of Central Florida
Project Overview
1 Micro-Controller 3 Servos 1 Audio Alarm
On-board Laptop Web-Cameras Range Finder
Off-board Server Wireless Connection from
On-board laptops Serves web-application to
end-user
Turret
Tilt Servo Trigger ServoPan Servo
Off-boardServer
On-boardPC
Microcontroller
Perimeter Webcamera 2
Perimeter Webcamera 1
Gun-mounted Webcamera
Range Finder
UserWeb Browser
USB
USB USB
USB
Serial
DigitalAnalog
Digital
Wireless
Wireless
Wireless
Audible AlarmDigital
University of Central Florida
Hardware Requirements and Specifications
University of Central Florida
Requirements and Specifications
Does not weigh more than 20 lbs. Is between 1 and 3 feet tall Is able to determine the distance of targets 60 feet away Is able to fire upon targets 30 feet away The battery lasts at least one hour on a full charge The battery is a commercial off the shelf (COTS) 12 volt
battery
University of Central Florida
Requirements and Specifications
Other sub-systems are powered by their own internal batteries
The 12 volt lead acid battery is rechargeable and has a capacity of at least 5000 mAh
The rangefinder has a range of 75 feet with an accuracy of ± 6 inches
The microcontroller provides Pulse Width Modulation (PWM) for 3 servo motors
The audible alarm is louder than 50 dB in sound
University of Central Florida
Software Requirements and Specifications
University of Central Florida
Requirements and Specifications
Motion detection is able to detect motion of at least 3 ft/s at 30 feet away
Turrets tracking system is able to follow targets moving 10 ft/s at 30 feet away
Target tracking system is able to track 4 or more targets at the same time
University of Central Florida
Requirements and Specifications
Engagement history database is able to store and display at least 100 prior engagements
The web applications work on all modern browsers such as Firefox, Google Chrome, etc
Manual control of the web application does not have more than 1 second of latency between receiving a command and executing it
University of Central Florida
Hardware Components
University of Central Florida
Mechanical Base
First, we wanted to create a base from aluminum, but the cost and equipment needed was too high
Refabricating would become even more costly if it became necessary from a redesign.
Moved towards a wood or plastic design Decided wood is the best option. This is due to:
Lowest price, easily acquired Sturdy enough for our required accuracy Lightweight for low strain on motor Design can be easily modified if necessary
University of Central Florida
Paintball / Airsoft Gun
Airsoft Gun: Crosman Mini Carbine with semi-auto and fully automatic
capability
Paintball Gun: Spyder Shutter with semi auto capability only
The turret base is designed to utilize either gun The primary focus will be with the airsoft gun due to:
Lighter weight Ammo capacity is higher and does not require a hopper on top
or extra weight from CO2 canister
Has the option of being fully automatic
University of Central Florida
University of Central Florida
Servo Motors
HS-485HB (Trigger Motor) from www.servocity.com 83.3 oz-in of torque, 90 degree
rotation 6V power, 180mA current draw
HS-5745MG Digital ¼ Scale (Pan / Tilt Motors) from www.servocity.com 250 oz-in of torque, 180 degree
rotation 6V power, 840mA current draw
1.2231 N-m which when expressed in oz-in is 173.206 oz-in
University of Central Florida
Rangefinder
Fluke 411D laser 100ft range, continuous
measurement, accuracy of plus or minus 3mm, small size, and light weight
LIDAR, IR, and others either too expensive or not long enough range
Allows perimeter to be established
University of Central Florida
Rangefinder Control
LR3 interface board allows computer control and communication with the 411D rangefinder
Solders into the inside of the 411D in place of the LCD and control panel
Enables continuous measurement mode
University of Central Florida
Computers and Webcams
Computers The computers are COTS laptops/netbooks Wi-Fi network connection
Webcams Using 3 COTS webcams 2-3 stationary to cover 180 degrees viewing angle 1 gun mounted camera for user vision
University of Central Florida
Audible Alarm
AudioLarm II from Floyd Bell Incorporated group members experience with the alarm sensor and the fact that it
costs only $25 for a quality alarm sound 90 dB alarm
University of Central Florida
Microcontroller
Has 3 PWM outputs for servo motors Has analog input for voltage sensing Has digital outputs to also fit warning alarm Communicates with the computer via serial connection Is inexpensive and easy to interface with using a high
level language
University of Central Florida
Atmel 328
Inexpensive, 8 bit microcontroller Has 6 PWM lines 14 digital I/O lines 6 Analog in lines Serial communication lines over two of the digital pins Programmable over serial using the Arduino bootloader Programmable in Wire, which is similar to C For pre-testing purposes, we can use the inexpensive
Arduino Uno
University of Central Florida
Microcontroller PCB Requirements
Has power line at 5 volts, 1 amp max for board power Has separate power line at 6 volts, 5 amp max to power
the servos Both power lines run off of the same battery Has voltage sensing circuit to estimate battery charge Has serial connection to computer Has break out connections for servos and alarm
University of Central Florida
University of Central Florida
University of Central Florida
University of Central Florida
Power
The webcams and rangefinder will be powered by USB connections from the laptop
The microcontroller PCB, servo motors, and alarm will be powered with an external battery UB1280 lead acid battery
12 volts 8 amp hour 5 lbs.
University of Central Florida
On-Board Software Components
University of Central Florida
Software Overview
University of Central Florida
Software Components - Onboard
C# 4.0 Visual Studio 2010 Aforge.NET Framework
University of Central Florida
Software Components
Python 2.2 Django MySQL Java 6.2 SDK Java Eclipse Adobe Flash
University of Central Florida
Source Control
Apache Subversion TortoiseSVN WinMerge
University of Central Florida
Motion Detection
Compare new frames to an updated ‘initial frame’ Track multiple targets Prioritize targets based on threat
University of Central Florida
Target Tracking
University of Central Florida
Target Class
TargetID : int Target() : voidangleLocation : int getAngleLocation() : intpitchLocation : int setAngleLocation(int) : voiddistance : int getPitchLocation() : inttimeAcquired : int setPitchLocation(int) : voidtimeReleased : int getDistance() : intshotsFired : int setDistance(int) : voidactive : boolean getTimeAquired() : int getTimeReleased() : int getShotsFired() : int shotFired() : void release() : void
Keeps track of a Target Time, Location Shots fired
University of Central Florida
Manual ControlManualControlServer :: Thread
+ ROTATE_CMD : String + ManualControlServer()+ PITCH_CMD : String + run() : void+ SIREN_CMD : String - calcTargetPitch(offset : Integer) : Integer+ SILENCE_CMD : String - calcTargetAngle(offset : Integer) : Integer+ FIRE_CMD : String - setAngle(angle : Integer) : void+ SET_ROTATE_CMD : String - setPitch(pitch : Integer) : void+ SET_PITCH_CMD : String - soundSiren() : void+ UP : Integer - silenceSiren() : void+ DOWN : Integer - fire() : void+ LEFT : Integer - validate(String passcode) : Boolean+ RIGHT : Integer - processCmds() : void+ ON : Integer - terminateControl() : void+ OFF : Integer - PASSCODE : String - name : String - port : Integer - turretController : TurretController - socket : Socket - targetAngle : Integer - targetPitch : Integer - rotatingRight : Boolean - rotatingLeft : Boolean - pitchingUp : Boolean - pitchingDown : Boolean
Converts received manual control commands into turret control Movement Fire Alarm
University of Central Florida
Microcontroller Communication
Communication between motion tracking software and microcontroller through 5 byte packets
Inbound Packet Structure
Outbound Packet Structure
Packet Type ID Parameter Parameter Parameter Parameter
Pan Angle(High Byte)
Pan Angle(Low Byte)
Tilt Angle(High Byte)
Tilt Angle(Low Byte) Status Byte
University of Central Florida
Off-Board Software Components
University of Central Florida
Off-board Server
Python based Web-application using Django framework. Supports multiple turrets connected to a single server. Web-application Provides:
Engagement History Radar-like representation of current target acquisition Manual control of turrets with video feed.
Data collection from turrets to persist data on server database.
University of Central Florida
Server Database
Turrets Table Contains data on each turret
Field of Vision Contains information
regarding the cameras attached to each turret
Turret Targets Contains the current
potential targets the turret has identified
Engagement History Contains the targets fired
warned or fired upon.
University of Central Florida
Server Data Collection
Data will be collected over TCP Socket connections between the Turret and Server using serialized objects.
Data will be sent as the following: After turret connection with server:
Turret, Field of Vision table data and initial camera view of the turret. Once a second throughout connection:
Updates on Turret Targets, and update the Turret pan angle. After engagement:
Insert into Engagement History with snapshot of target.
University of Central Florida
Web-App: Home Screen
Main page including a grid of all connected turrets, with latest engagement snapshot or intial snapshot if no engagements
University of Central Florida
Web-App: Engagement History
Lists all the engagements on the left, selecting an engagement will load the details, radar representation and camera snapshot of the engagement.
University of Central Florida
Web-App: Turrets Page
Displays a grid of all connected turrets and their initial snapshot. Provides access to filtered engagement history list, radar watch page and manual control page.
University of Central Florida
Web-App: Radar Watch
Displays radar-like representation of the current target acquisition of each turret that was selected to view.
University of Central Florida
Web-App: Manual Control Page
Displays video feed of gun-mounted camera, current radar, and a java applet for taking manual control of the turret.
University of Central Florida
Web-App: Manual Control Applet
Connects directly to turret. Receives turret pan angle
and turret targets for a faster response radar.
Maps keyboard/mouse controls to controlling pan, tilt, alarm and firing.
Sends turret commands over socket connection to turret software which relays the commands to the turret’s microcontroller.
ManualControlServer :: Thread+ ROTATE_CMD : String + ManualControlServer()+ PITCH_CMD : String + run() : void+ SIREN_CMD : String - calcTargetPitch(offset : Integer) : Integer+ SILENCE_CMD : String - calcTargetAngle(offset : Integer) : Integer+ FIRE_CMD : String - setAngle(angle : Integer) : void+ SET_ROTATE_CMD : String - setPitch(pitch : Integer) : void+ SET_PITCH_CMD : String - soundSiren() : void+ UP : Integer - silenceSiren() : void+ DOWN : Integer - fire() : void+ LEFT : Integer - validate(String passcode) : Boolean+ RIGHT : Integer - processCmds() : void+ ON : Integer - terminateControl() : void+ OFF : Integer - PASSCODE : String - name : String - port : Integer - turretController : TurretController - socket : Socket - targetAngle : Integer - targetPitch : Integer - rotatingRight : Boolean - rotatingLeft : Boolean - pitchingUp : Boolean - pitchingDown : Boolean
University of Central Florida
Potential Problems
Rangefinder malfunctioning Securely fastening of gun to mechanical base Latency of updates for web-application because of web-
application and data collection are seperate. Keeping a sufficiently high fps to track target
University of Central Florida
Administrative
University of Central Florida
Project Status
University of Central Florida
Budget
Component Price
Rangefinder $100
Rangefinder Control Board $150
Servo Motors $170
Audible Alarm $25 (Projected)
Arduino Uno $35
Test Webcam $6
PCB $100 (Projected)
Base Materials $58
Battery $50
Total $694