Hidin Camera Project

Embed Size (px)

Citation preview

  • 8/2/2019 Hidin Camera Project

    1/17

    WiiROBOTIC CAMERATEAM 6

    JIM LANGEBRETT ROBBINSMIKE STEPHENS

  • 8/2/2019 Hidin Camera Project

    2/17

    PURPOSEThe Wii Robotic Camera serves to fill a current gap in the television broadcasting industry. Theidea for the Wii Robotic Camera started as an idea back in high school for one of our groupmembers while working with a television station. The initial idea and has been expanded for thescope of this course.

    Currently, cameras in the broadcasting industry require a hands-on-operator. The problemsassociated with such a set up are the effects of operator fatigue and stability in the camera shots.The broadcasting industry has been moving more and more towards robotic cameras, but to datemost applications have been in television studios and not live productions.

    The Wii Robotic Camera will provide three key essential elements that have been missing foruse in live production: three-axes of motion control (to date only two available), stability control(to account for changes in the environment), and an intuitive, compact user interface.

    OBJECTIVESTo be considered a successful project, the Wii Robotic Camera needs to be able to do thefollowing:

    Wirelessly control zoom, focus, and iris for the lens from the Nunchuck. Wireless control the pan, tilt, and roll angle of the camera from the Nunchuck. Drive the robot around wirelessly via the Nunchuck. Have intuitive controls for the user via the three Nunchuck system. Have variable speed control over all lens control (zoom, focus, and iris) and orientation

    (pan, tilt, and roll angles). Maintain quick response time in stability control with up to a 15-degree change in the

    environment.

    The functions and benefits of the Wii Robotic Camera will include: Wireless control over multiple axes of the robotic camera. Replaces hands-on-operator (shoulder mounted camera operator). Reduces operator fatigue. Easily integrated into any standard television-recording set-up. Ability to quickly and easily hard home the camera.

    The features the Wii Robotic Camera will include: Ability to invert tilt axis (if preferred by user). 120 of freedom in tilt angle. 360 of freedom in pan. 120 of freedom in roll angle. Range of at least 20 feet for controlling the Wii Robotic Camera Wirelessly.

  • 8/2/2019 Hidin Camera Project

    3/17

    DESIGNBlock Diagram

    Block DescriptionsUserThe person holding the Nunchuck operating the camera/robot while watching the video feed andtalking to other crew members over the intercom.

    NunchuckNintendo Wii Nunchuck controller that has been hacked to relay control signals through I2C.Furthermore, well be combining multiple Wii Nunchucks and replacing some of thebuttons/joysticks with our own analog/digital buttons/joysticks. The Wii Nunchuck will controlcamera functions and three-axis camera mount movements, and the movements of the platform.

    Arduino

    This is the microcontroller that will receive the I2C data from the Nunchuck and button/joysticksignals; interpret everything and communicate with the robotic head/base. .

    RF Transmitter/ReceiverThis is the RF transmitter/receiver pair that well being using as communication between theArdruino and the Arduino on the Base/Robotic Head. **Note: there will be a RF Receiver onboth the Arduino on the base and the Arduino on the Robotic Head.

  • 8/2/2019 Hidin Camera Project

    4/17

    Arduino on the Robotic Head

    This unit will receive all of the commands for Zoom, Focus, Iris, Pan, Tilt, and Dutch. It willinterpret these commands and control all of the related motors. This will house the stabilitycontrol that is responsible for maintaining the reference angles sent to it by the Arduino. Thissystem is primarily meant for when the camera is in motion. It will combat disturbancesassociated with the ground level while the platform is driving around.

    Pan, Tilt, and Dutch Motor

    These are the motors that control the Pan, Tilt, and Dutch.

    Zoom, Focus, and Iris Motors

    These are the motors that manually adjust the Zoom, Focus, and Iris settings on the camera.

    Camera Mount

    This is the physical mount that the camera mounts to (through a universal camera mount). Thisis also where the 3-Axes Accelerometer will be mounted for the stability control system.

    3-Axes Accelerometer

    This is the 3-Axes Accelerometer that will be used as feedback for the stability control system.

    Arduino on the Base

    This is the microcontroller responsible for receiving the Forward, Backward, Left, and Rightcommands.

    Wheel MotorsThese are the motors that will drive the base, consequently the entire robot, around.

    CameraThis feeds real time images to the Image Feedback (which then transmits the signal).

    Image Feedback

    Sends video signal to Truck/Studio and user.

    Intercom

    ** Not a part that is being created for project. ** Allows director to communicate with thecamera operator. This is a built in function of the Camera.

    Truck/Studio** Not a part that is being created for project. ** This is the hub from which the video signalsare processed and recorded. It is also where the user is given directions for shooting of the video

    by director or control room.

  • 8/2/2019 Hidin Camera Project

    5/17

    Controller(s)States

  • 8/2/2019 Hidin Camera Project

    6/17

    Turn On

    This is the state where everything physically turns on, i.e. the microprocessor that communicateswith the Wii Nunchuck.

    All Controllers OnIn this state all of microcontrollers initialize and verify communication.

    Hard Home

    This state is meant specifically for the Robotic Head. It will adjust the pitch and dutch angles sothat the camera is level.

    Read Button (1)In this state the microprocessor reads which button the user pressed.

    Hard Home ButtonIf the button was a hard home, the Robotic Head will hard home itself.

    Soft Home Button

    If the button was soft home, the microprocessor must determine whether or not it was setting softhome or recalling the saved pitch/dutch angles.

    Held More Than 2 SecondsWhen the user presses soft home for at least 2 seconds, soft home will be set.

    Soft HomeThe camera will be positioned to soft home.

    Record Soft HomeIf the user holds the soft home button down for more than two seconds, soft home will be reset to

    the present pitch and dutch angles values.

    Base CommandIf the button pressed is related to driving the base, the instructions will be sent to themicroprocessor on the base; otherwise, the data will be sent to the microprocessor on the RoboticHead.

    Break Button

    This button indicates if the base is meant to be stationary.

    Hold Wheel Position

    If the break button was pressed, the base will remain stationary, regardless of the values comingfrom the joysticks.

    Increase Speed Button

    If the speed button is pressed, the base will change its speed.

    Use Fast Drive Settings

    These settings are meant for moving the base around between camera shots.

  • 8/2/2019 Hidin Camera Project

    7/17

    Use Slow Drive SettingsThese settings are meant for when the camera is filming. The base will move slower for moreprecise and steady shots.

    Robotic Head Command

    The Robotic Head consists of the motors that control pan/tilt/dutch and camera controls.

    Enable ButtonThis checks if the enable button for adjusting pan, tilt, and dutch was pressed.

    Check Reference ValuesThis state checks on what the previous reference angles were.

    Change in ValuesDepending which control is desired, any combination of values might be changed.

    Maintain

    If no change is required, the current values are maintained.

    Adjust Variables

    This state changes the orientation of the camera based on the users desire.

    Read Button (2)

    This state determines what command for the camera the user desires (zoom, focus, or iris).

    Execute

    This state executes the zoom/focus/iris command.

  • 8/2/2019 Hidin Camera Project

    8/17

  • 8/2/2019 Hidin Camera Project

    9/17

  • 8/2/2019 Hidin Camera Project

    10/17

  • 8/2/2019 Hidin Camera Project

    11/17

  • 8/2/2019 Hidin Camera Project

    12/17

    Arduino DiecimilaThis is the micro-controller that is at the heart of our designs. It will act as the data acquisitioninterface from the controllers. It will then route all of that information out though the RFtransmitter to the receivers. On the opposite end they will also take in that data from the receiversput them though the corresponding control algorithms and out put the values we need for speedand direction control to all of our motors. There are three of these chips in our design one for theblack box for the human interface and two on the robot itself. As described in the previousdiagrams

    Shine RF-408This is the RF receiver we will be using on the robot platform and camera mount systems. Wewill use a separate receiver for both systems as we would like the mount to be a free standingperipheral that could be used on different applications, such as a jib. This will take the data fromthe transmitter and funnel it into the receive data port on the Arduino

    Shine RB- Ons 01This is the RF transmitter that will be used on the black box portion of the controller. It will takethe output signals from the controller Arduino and send it wirelessly to the robotic platform and

    three axis mount. We chose this transmitter for its simplicity and its range.

    ADXL3300This is a three axis accelerometer. The purpose of this device is to allow feedback to the threeaxis camera mount. It will tell the system when the platform has moved to a different level thatwill allow the system to correct the camera angles for the shot to stay in the same direction.

    Base RemoteThis is the device that will take the human input that will control the platform. Detailed drawingto follow.

    Camera RemoteThis is the device that will take the human input to control the three axis mount and the cameracontrols. It is a modified Wii Nun chuck that will allow for the robust controls required over thesystem. Detailed drawing to follow.

    Voltage Regulator CircuitThe system will use 12 volt batteries so these circuits will provide the corrected voltage neededto each of the systems and motors.

    Bi-Polar RelayBased upon the signal from the Arduino they relay will place the PWM signal on either the

    positive or the negative channel of the motor circuit. This will allow for both forward and reversemovement on the motors.

  • 8/2/2019 Hidin Camera Project

    13/17

    Performance RequirementsOur system will need to meet the following specifications:

    Three-axes mount

    120 Tilt 60 up and 60down. 120 Roll 60 left and 60 right (this is rotating on the y axis).

    360 Pan left and right. Fast response time (2ms) to disturbances (i.e. compensate for changes in terrain). Speed control over different movements with Nun chuck. ( at least 3 different speeds) Ability to hard home the camera. (face forward and perpendicular to platform )Camera Controls

    Control Focus with feedback to prevent lens damage. Control Iris with feedback to prevent lens damage. Control Zoom with feedback to prevent lens damage.Communication Complete control with RF signal at 100ft from platform. Disable of Wii Robotic Camera when loss of signal occurs (halt operation when no

    signal).

    VERIFICATIONTesting ProceduresTo test operation of Wii Robotic Camera we will test each of the sub-systems separately. Wewill test again after the sub-systems have been fully integrated.

    Wii Nunchuck Controllers

    This is a combined system so we will test them together. With changes to the Nunchucks (i.e.when a button is pressed or the joy-stick is moved) we will scope the outputs of the receiver tonote the changes in output voltages. We will also test at a variety of ranges from the receiver totest signal strength and integrity

    PID Controller and Motors

    Before we can determine our gain values, we need to measure the response of our motors(individually) by either obtaining a step response or a bode plot. This will allow us to design ourPID controller. In the continuous time domain our PID controller would be:

    u(t) =pe(t)+i e(t)0

    t

    d +dde

    dt

    Where e(t) = u(t) y(t)and y(t) is the reference input.Since this controller will be implemented onto a microprocessor, we cant use continuous time,so the discrete representation is as follows:

    u(n) =pe(n)+i e(k)k= 0

    n

    +d e(n) e(n 1)( )Where e(n) = u(n) y(n)and y(n) is the reference input.

  • 8/2/2019 Hidin Camera Project

    14/17

    Accelerometer

    We will put power across the chip and measure the outputs with an oscilloscope and search forthe error that may be associated with the device on each of its axes.

    Three-Axes MountWe need to measure the change in position that occurs when a motor controlling one of thethree-axes (pan, tilt, and roll) reaches the limit of its range of motion. At these points, we willmeasure the accelerometer output to determine if it has its full range of motion.

    Tolerance AnalysisWe need to be absolutely certain that the relationship of the degrees of rotation on each axesfrom the Nun chuck are directly proportion to the output speed of the motors. This is importantbecause a critical part of our project is that the Nun chucks have variable speed control over thethree-axes of movement on the camera mount. To determine our accuracy, we will compare twographs (each obtained using an oscilloscope). The first plot will be voltage vs. motor speed; andthe second plot will be voltage vs. the angle of the Nunchuck. These plots will allow us to modelthe relationship between the Nunchuck and the motor(s) and verify that we have variable speedcontrol for the robotic camera.

    Physical Component Layout

    Standard Nun chuck Modified Control System

    Controller Layout

    Base ControlThis component will have the standard look and feel of the Wii Nun chuck but will not make useof the accelerometer and will be connected into our modified camera/ robotic head controller.The joystick will control the movements of the platform. The C and Z buttons will allow therobot to enter quick-travel mode and brake respectively.

  • 8/2/2019 Hidin Camera Project

    15/17

    Robotic Head & Camera Control

    This component is the modified Wii Nun chuck. There will be the standard output from atraditional Nun chuck using the IC2 protocol, but it will also have additional signals to controlmore options on the camera.

    Section 1 controls: zoom (up/down) and dutch angle (left/right) with the joystick; the tilt(up/down) is controlled with the z-axis of the accelerometer and pan (left/right) is controlled withthe x-axis of the accelerometer. The use of the pan and tilt is enabled when the Z button ispressed. The C button allows for inversion of the tilt axis control.

    Section 2 controls: focus (left/right) and iris (up/down) with the joystick; the C button executesa hard home; and the Z button sets/executes a soft home.

    Mechanical Layout

    The above diagrams show the full layout of the Wii Robotic Camera. The Diagram to the rightshows the Denavit-Hartenberg convention that our robotic head follows for joint placement. Theportion labeled Under Design with the Machine Shop is the same motors/circuitry as theportion it is resting on. The combination of the two robotic heads allows for pan, tilt and dutchangle movement. The secion is currently a black box as we are still determining the best way tocombine the two robotic heads (talking with the machine shop about it).

  • 8/2/2019 Hidin Camera Project

    16/17

    Ethical Considerations

    After reviewing the IEEE Code of Ethics, safety is certainly a big concern of ours. Our projectconsists of a large, wireless robotic platform; if for some reason we lost control of it, it couldseriously injure someone. Whenever we demonstrate our project, we need ensure that everyoneinvolved/observing understands the proper safety procedures.

    Additionally, our project will rely heavily on I2C protocol, for the Wii Nunchuck, and we will bebasing our code off the work of others. We will properly/accurately accredit/cite thecontributions of others.

    COST ANALYSISBelow is a summary of the expected cost for the project:

    Labor Hours Rate Total

    Brett 10 hours/week $30/hour $300/week

    Jim 10 hours/week $30/hour $300/week

    Mike 10 hours/week $30/hour $300/week

    Summary 30 hours/week $90\/hour $900/weekTotal Labor 330 hours/semester $30*2.5 $24,750.00

    Part # Description Qty Manufacturer Unit

    Cost

    Total

    Cost($)

    Status

    RB-Ons-01 RF Receiver &

    Transmitter Pair

    1 Shine $10.00 $10.00 Pending

    62613 Nunchuck 3 Nintendo $20.00 $60.00 Pending

    RB-Ard-03 Microcontroller

    (Diecimila)

    3 Arduino $35.00 $105.00 Pending

    ADXL330 Accelerometer 1 ADXL $35.00 $35.00 PendingVK82A-ED-LR-PS79-LARGE-HOME

    2.4 GHz Wireless

    Video Transmitter

    1 X10 $50.00 $50.00 Received

    -- Wheels Base 2 JSDC Donated Donated Received

    -- Motors Base

    (Wheel Chair)

    2 JSDC Donated Donated Received

    24737 Ball Caster 1 Acme $32.00 $32.00 Pending

    -- Robotic Head 2 Panasonic Donated Donated Received

    Fiber Glass Resin,

    Paint, Bondo

    Minimal Lowes +/- $30 $30.00 Pending

    Misc. Components

    from Electronics

    Shop

    Shop Pending

    Totals $322.00

    Total Cost $24,840.00

  • 8/2/2019 Hidin Camera Project

    17/17

    SCHEDULEBelow is our groups planned schedule for the semester:

    Week Brett Jim Mike

    Work on proposal, Work on proposal, Work on proposal,

    15-SepResearch algorithms for

    controls systemsResearch robotic platform

    Work with machineshop to start 3 axis

    camera mount

    22-Sep

    Research algorithms forcontrols systems

    Prepare for design review

    Build/ Update roboticplatform

    Prepare for design review

    Work with machineshop on 3 axis camera

    mount / Hack WiiMOTE

    29-SepDesign software

    requirementsBuild foe Wii mote circuit

    Crack Wii MOTE -Nunchuck

    6-Oct Build case for Wii motecontroller

    Model/ build circuits ofcamera inputs

    RF receiver/transmitter circuits

    13-OctControls Zoom Focus

    IrisBreaking Movement circuit

    for platformZoom Focus Iris

    controlling circuits

    20-Oct Controls Pan Tilt DutchAssist Control TestingCircuits with Controls

    Pan Tilt Dutchcontrolling circuits

    27-Oct PIC Fab /Controller Set up Sensor TestingPIC Fab. /Controller

    Set up

    3-Nov Mockup Mockup Mockup

    10-Nov Algorithm testing Testing mechanical specsAssist in testing final

    algorithms

    17-Nov

    Final processing tweaksbased on overall

    performance

    Final tweaks on controllingplatform, and elevation

    sensing

    Ensure project meetsperformance specs

    24-Nov

    Thanksgiving BreakWork on report -Unexpected Fixes

    Thanksgiving BreakWork on report -Unexpected Fixes

    Thanksgiving BreakWork on report -Unexpected Fixes

    Demo Demo Demo1-Dec

    Finish Report Finish Report Finish report