* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
Download First Semester - Electrical Engineering and Computer Science
History of electric power transmission wikipedia , lookup
Pulse-width modulation wikipedia , lookup
Power engineering wikipedia , lookup
Power over Ethernet wikipedia , lookup
Voltage optimisation wikipedia , lookup
Resilient control systems wikipedia , lookup
Mains electricity wikipedia , lookup
Electric motor wikipedia , lookup
Thermal runaway wikipedia , lookup
Electrification wikipedia , lookup
Brushed DC electric motor wikipedia , lookup
Alternating current wikipedia , lookup
Control system wikipedia , lookup
Induction motor wikipedia , lookup
Brushless DC electric motor wikipedia , lookup
Opto-isolator wikipedia , lookup
Variable-frequency drive wikipedia , lookup
Square D: Improved Robotic Arm and Turntable for Sensitivity Characterization of Occupancy Sensors Prepared by: Brian Auerbach, Sam Garza, Will Hedgecock, Anne Killough, Bob Ramenofsky, John Sullivan, and Havan Tucker 12/17/2007 Table of Contents 1 2 3 4 5 Introduction ................................................................................................................. 4 1.1 Team Members ..................................................................................................... 4 1.2 Project Sponsor .................................................................................................... 5 System Overview and Description.............................................................................. 6 2.1 Project Description ............................................................................................... 6 2.2 System Requirements ........................................................................................... 8 2.3 System Diagram ................................................................................................... 9 2.4 Major Component Definition ............................................................................... 9 2.5 Command and Control Assembly ........................................................................ 9 2.5.1 Interfaces ..................................................................................................... 10 2.5.2 Communication Responsibilities ................................................................ 10 2.5.3 Personal Computer ...................................................................................... 10 2.6 Operational Concept ........................................................................................... 10 2.6.1 Operational Diagram ................................................................................... 11 Robotic Arm Assembly............................................................................................. 12 3.1 Sub-Project Description ..................................................................................... 12 3.2 Robotic Arm System Requirements ................................................................... 12 3.2.1 Physical Dimensions ................................................................................... 12 3.2.2 Thermal Specifications ............................................................................... 12 3.2.3 Movement Specifications............................................................................ 13 3.2.4 Device Communications ............................................................................. 13 3.3 Robotic Arm System Diagrams.......................................................................... 13 3.4 Interface Definitions ........................................................................................... 15 3.4.1 PC to Microcontroller ................................................................................. 15 3.4.2 Microcontroller to Stepper Motors ............................................................. 16 3.4.3 Power Supply to Electrical Components .................................................... 16 3.5 Major Sub-Component Definitions .................................................................... 17 3.5.1 Microcontroller ........................................................................................... 17 3.5.2 Thermal Management ................................................................................. 17 3.5.3 Thermal (Heating) Element ........................................................................ 17 3.5.4 Motors ......................................................................................................... 18 3.5.5 Robotic Arm................................................................................................ 18 3.5.6 Power Supply .............................................................................................. 18 3.5.7 Mounting Cart ............................................................................................. 18 3.6 Operational Concept ........................................................................................... 19 Turntable Assembly .................................................................................................. 20 4.1 Sub-Project Description ..................................................................................... 20 4.2 Turntable System Requirements .........................Error! Bookmark not defined. 4.3 Turntable System Diagrams ................................Error! Bookmark not defined. 4.4 Interface Definitions ............................................Error! Bookmark not defined. 4.5 Major Sub-Component Definitions .....................Error! Bookmark not defined. 4.6 Operational Concept ............................................Error! Bookmark not defined. Project Plan and Schedule ......................................................................................... 24 6 Appendices ................................................................................................................ 26 6.1 Appendix A: Minor Motion Coverage Pattern ................................................... 26 6.2 Appendix B: Heating Element Comparisons ..................................................... 29 6.3 Appendix C: Choice of Motors Comparison...................................................... 34 6.4 Appendix D: Power Supply Analysis ................................................................ 37 6.5 Appendix E: Gantt Chart .................................................................................... 39 1 Introduction 1.1 Team Members 1.1.1 Brian Auerbach, Biomedical/Electrical Engineer Brian is responsible for all research and design of the thermal element required to make the robotic arm emit infrared waves in a manner similar to the wave emission characteristics of a human arm. Brian’s contributions include researching several heating element possibilities, deciding upon the most suitable means of heating the robotic arm, and actually designing and implementing the heating element in such a way that the arm emits the desired infrared wavelengths uniformly. 1.1.2 Sam Garza, Computer Engineer Sam is responsible for the microcontroller selection, and firmware programming for the turntable project. Additionally, he is on the integration team with Will. This includes the design of the software, connections, and communications between the robotic arm and turntable sub-projects. 1.1.3 Will Hedgecock, Computer Engineer Will is responsible for the overall control and integration aspects of the robotic arm project. This includes microcontroller selection, firmware programming of the microcontroller to control the movements, speed, and temperature of the robotic arm, software programming of the graphical user interface, connections and signaling to and from the robotic arm, and all integration between the robotic arm and turntable projects. 1.1.4 Anne Killough, Electrical Engineer Anne is responsible for the electronic systems of the turntable assembly. This includes the design of the motor electronics, the light detection circuit, and the power systems used for supporting the microcontroller, motors, and light detection circuit. 1.1.5 Bob Ramenofsky, Mechanical Engineer Bob is responsible for the mechanical design of the turntable assembly. This includes deciding upon which type of motor will best suit our needs in terms of torque, power, speed, durability, and overall controllability. He will also be in charge of modeling the turntable project on the computer. Additionally, he will lead the physical assembly of the turntable project. 1.1.6 John Sullian, Electrical Engineer John will be working on the more mechanical aspects of the project, most importantly the motors. This includes deciding upon which type of motor will best suit our needs in terms of torque, power, speed, durability, and overall controllability. In addition to working on the motors, John is responsible for providing appropriate power sources to all aspects of the robotic arm, including motors, microcontroller, and thermal elements. 1.1.7 Havan Tucker, Mechanical Engineer Havan will be aiding the robotic arm team with the mechanical aspects of their project. This includes the design of the motor and the gear assembly. He will also aid them in the computer modeling of their design. In addition to these responsibilities, he will also participate in the assembly of the turntable project. 1.2 Project Sponsor Square D: A Brand of Schneider Electric Square D is an internationally-distributed brand of Schneider Electric, specializing in the design and manufacturing of NEMA type electrical control products. Square D products can be found in residential, commercial, and industrial facilities, as well as in or on the products of other manufacturers. Their lighting control systems can be found in some of world's most prestigious applications including the Sydney Opera House in Australia and the Imperial War Museum in the United Kingdom. The key design goal of Square D’s lighting products is that lighting is maintained only when a specialized monitoring system determines that people are actually in the room, resulting in power savings of up to 75%. Specifically, our project sponsors from Square D are Bill Stottlemyer (Senior Electrical/Electronics Engineer), Scott Rae, and Charles Reneau. We are also receiving assistance from a student on last year’s Square D Robotic Arm team, Kenner Warren, who currently works for Square D in the capacity of a Testing/Electrical Engineer. 2 System Overview and Description 2.1 Project Description The Square D occupancy sensors use both ultrasonic and passive infrared technology (PIR) to detect occupancy in a room. This project is concerned with the sensitivity characterization of the PIR aspect of these sensors. The National Electric Manufacturers Association (NEMA) is the largest trade organization for electrical manufacturers in the United States. In order to ensure the safety and reliability of electrical products, they publish numerous standards that govern a variety of electrical products. One of these standards is WD7-2000, which sets guidelines for the sensitivity of motion sensors employing PIR technology. The standard is comprised of two portions: major motion and minor motion. Our project is limited in scope to conformance with the minor motion portion of this standard. The full specifications of this standard can be found at http://www.nema.org/stds/wd7.cfm. The testing of an IR-based motion sensor involves determining whether or not the sensor can detect and be activated by several types of minor motion in different parts of its coverage area. A coverage area is defined as the area in which the sensor should be able to detect motion, comprising both horizontal and vertical fields of view. The coverage area is broken down into a grid containing eighty-four 3ft by 3ft cells, which enables the tester to see precisely what sections of the coverage area correctly detect motion and which sections have failed the motion test. In each grid, the amount of motion that can be detected often depends on how far that grid is from the sensor, and at what angle that grid is to the sensor. The amount of motion detected in a grid can be classified as either major or minor motion. Minor motion is defined as the movement of a person sitting at an office desk reaching for a telephone, turning the pages in a book, opening a file folder, picking up a coffee cup, or other such typical desk-oriented tasks. See Figures 2-1 and 2-2 for examples of the coverage area. Figure 2-1: Coverage Area, Top View Figure 2-1 shows how the grids that are close to the sensor and in direct line of sight of the sensor can detect minor motion, while the grids that are farther back or at the edge of the coverage area can only detect major motion. Figure 2-2: Coverage Area, Side View The method that Square D Lighting Control currently uses to test for conformance to the requirements set forth by NEMA is inefficient and tedious. The current process takes around seven hours to complete for one single sensor. It requires the use of a large meeting room that is often monopolized by other meetings. Additionally, there is no automation in the process, and requires the tester to make every single adjustment and record all of the data by hand. Additionally, the robotic arm currently in use has numerous functional problems and is not a good emitter of IR energy at the wavelength of human flesh. 2.2 System Requirements The objective of this project is to make the testing process more efficient by reducing the space required for testing and by speeding the process up. This project should also automate as much testing as possible and automatically log the data obtained from the testing process. The project should allow for the operator to test remotely (i.e. from a different room) in order to ensure that the testing environment is not contaminated by additional PIR radiation. Additionally, this project includes a redesign of the robotic arm in order to address the aforementioned problems. 2.3 System Diagram Command & Control Assembly Ethernet Network Robotic Arm Assembly IR Interface Turntable Assembly Figure 2-3: System Overview Block Diagram 2.4 Major Component Definition This project can be divided into three sub projects: the robotic arm assembly, the turntable assembly, and the command and control assembly. Each group is responsible for their respective assembly; however, the command and control assembly will be a joint effort. Coordination of this sub-project will be the responsibility of Will Hedgecock and Sam Garza. In addition to the command and control assembly, these individuals will also be responsible for setting a communications standard for the other sub-projects. The command and control assembly will be further discussed in this section. 2.5 Command and Control Assembly The command and control assembly will be the interface that the operator utilizes to control the robotic arm and the turntable assemblies. This assembly will also be responsible for the coordination between the project assemblies, as well as the data logging of test data. Additionally, this section will prescribe which sub-project is responsible for what information and where it should be sent. 2.5.1 Interfaces The robotic arm, turntable, and command and control assembly will all communicate with each other through an Ethernet network. This will allow the operator to control the system remotely. Square D’s facility already has an existing infrastructure for this medium, making it a logical choice. 2.5.2 Communication Responsibilities The command and control assembly will be responsible for coordinating the movements of the robotic arm and the turntable assemblies. It is responsible for sending information to the robotic arm that specifies what position the robotic arm should move to. It is also responsible for sending information to the turntable that specifies what angle it should move to. The robotic arm assembly will be responsible for receiving movement information from the command and control assembly. It will also be responsible for informing the command and control assembly when it has completed its movements. The turntable assembly will be responsible for receiving movement information from the command and control assembly. It will also be responsible for informing the command and control assembly when it has completed its movements. Additionally, the turntable assembly will be responsible for transmitting information regarding the current activation status of the occupancy sensor to the command and control assembly. 2.5.3 Personal Computer The computer will serve as a command and control assembly. Specifically, there will be a control GUI, running on a Windows platform, which will provide the option to either click graphical buttons with a mouse or simply input keystrokes from a keyboard. The GUI will include controls for the direction of movement of the robotic arm (either horizontal or vertical, denoted by buttons with arrows pointing in the corresponding directions), and a speed control box, allowing the user to specify whether the arm should move through a maximum of 90° of an arc in one second or some other slower speed. Additionally, there may also be temperature controls, allowing the user to input the desired temperature of the robotic arm remotely from the PC, instead of directly into the thermal management device. The implementation of this aspect of the GUI depends on what type of thermal management device we decide to use. The GUI will also include controls for the specification of angles that the turntable assembly will need to be moved to. Lastly, the GUI will also include data logging features. It will assimilate the information that it receives from the robotic arm and turntable assembly and record it in a format that is easy to understand. The PC can take the form of either a laptop or a desktop. Either will suffice so long as it is running a version of Windows more recent than or including Windows 95 and has the proper interfacing capabilities. 2.6 Operational Concept This section describes the overall operation of the system as a whole. The tester is defined as the individual who is operating the system, and the test block is defined by the diagram found in Appendix A. 2.6.1 Operational Diagram Choose Test Block Tester moves robotic arm to proper distance Robotic arm iterates through programmed movements Record Data: Did the light turn on? UI commands turntable to proper coordinates NO Legend Movements complete? YES Automated Action/ Decision Decision User Action/ Decision Action/ Process 3 Robotic Arm Assembly 3.1 Sub-Project Description The goal of this sub-project is to improve upon an already existing version of a robotic arm, used in the characterization and determination of the sensitivity parameters of occupancy sensors developed by Square D Lighting Control. The robotic arm is used to simulate "minor motion", which is defined as the characteristic motion exhibited by an individual seated at a desk while performing normal office tasks. The arm can be positioned inside the specified coverage area for an occupancy sensor, and provide a means by which to test whether or not a certain minor motion will be acknowledged or ignored by the sensor circuitry. Using a robotic arm instead of a human produces controlled, repeatable movements, assuring test objectivity and thereby lending scientific credibility to the test results. 3.2 Robotic Arm System Requirements Square D specified a minimum number of requirements which were required to be met in order for this project to be successful. They were as follows: 3.2.1 Physical Dimensions Arm: 18 inches long with exactly 15 inches of heated area Cart for mounted arm: must be mounted exactly 36 inches above ground In order to accurately represent minor motion, the arm needs to be similar in size to a human arm. In addition, since minor motion is the motion exhibited by an individual seated at a desk, the arm should be mounted at the same height as a person's arm would be if they were sitting at a desk. 3.2.2 Thermal Specifications Temperature Range: 80 to 120°F Temperature Resolution: < 2°F Peak Wavelength Emitted: 9.4 µm Emitted Wavelength Range: 7 to 15 µm One of the main improvements desired in this project is a more similar infrared emission spectrum to the average human arm. Last year’s robotic arm failed to emit in quite the same range as the human arm, causing the sensor not to be activated when it otherwise should have been. Therefore, it is necessary that the thermal element be able to be heated to a very precise temperature, with the caveat that this temperature will cause the arm to emit in the desired infrared wave spectrum. Also, the robotic arm should emit waves uniformly in all directions and be safe enough to touch without risk of burn. 3.2.3 Movement Specifications Direction of Motion: 180° both vertically and horizontally, but not simultaneously Speed of Motion: 90° of an arc per second The coverage area of the sensors developed by Square D Lighting Control comprises both horizontal and vertical fields of view; therefore, in order to test the full range of the sensor, the robotic arm should be able to move a full 180° in both the vertical and horizontal directions. The arm should also be able to move through 90° of an arc in one second, corresponding to the amount of time it takes for an individual seated at a desk to make one swift arm movement, whether it be typing, writing, or answering a phone. Two additional movement requirements, based on the shortcomings of last year’s project, are that the arm should be able to be held in any position indefinitely, and that it should be able to make fluid, controlled movements without shaking or jerking while starting and stopping. Last year’s arm overheated if held in a position parallel to the floor for more than a few minutes, causing it to drop to the down position and become inoperable for an amount of time. This is unsatisfactory as the testing requirements often mandate that the arm be held in a specific position for upwards of five minutes. In addition, the use of servo motors and an inadequate power source caused the noted jerkiness during the starting and stopping of the arm’s movements. This year’s arms should overcome these inadequacies of last year’s design to aid in more efficient testing and more accurate test results. 3.2.4 Device Communications PC to Microcontroller Interface: Ethernet Microcontroller to Stepper Motors: Memory Mapped I/O Ethernet was chosen as the communication technology between the computer and the microcontroller based on its extensive protocol documentation and packet style of data transmission. Since there is the possibility of using either one or two microcontrollers between the robotic arm and turntable projects, it will simplify things greatly to be able to address a packet of data to a specific microcontroller using a static IP address. Also, Square D expressed the need for running tests from a distance of greater than 50 feet and possibly a separate room. This could be implemented with maximum ease for the user over wireless, and Ethernet requires no additional data manipulation to send data over wireless instead of a wired connection. Since stepper motors are controlled using direction pulses of varying frequency to determine the number of steps to rotate, it would be simple to control these pulses by simply writing them to a memory location on the microcontroller which is mapped to the correct corresponding output port with a stepper controller attached. 3.3 Robotic Arm System Diagrams Figure 3-1: Component Interaction Block Diagram Figure 3-1 shows the interactions and connections between the various components of the robotic arm. Either one variable power source or more than one separate power sources will be required to drive the heating element, the thermal management device, and the microcontroller. A personal computer running a control GUI program will send signals over Ethernet to a microcontroller which will handle these signals by outputting the appropriate pulses to the motor controller to cause the motors to rotate. The rotation of these motors, in turn, will cause the robotic arm to move either vertically or horizontally. Some type of thermal management device will be used, either as a completely independent device, or a PC-controlled device, to provide the appropriate power to the heating element to reach the desired temperature. Finally, upon completion of a desired movement by the robotic arm, the microcontroller will receive an indication from the turntable assembly whether or not the sensor was activated and pass this information along to the PC for logging. Figure 3-2: Robotic Arm Operational Flowchart Figure 3-2 shows the basic operations of the robotic arm. Every time a specific minor motion needs to be tested, the previous procedure must be followed from start to finish. The robotic arm ultimately receives all of its control input from the PC via the microcontroller, and all data capturing takes place in the Turntable Assembly which then forwards the data to the PC, again via the microcontroller. 3.4 Interface Definitions 3.4.1 PC to Microcontroller The PC to microcontroller interface will make use of Ethernet technology over an RJ-45 cable to transmit command and control data and also to receive sensor data for data logging. The control signals will take the form of single ASCII characters being sent over Ethernet to control the movement of the robotic arm. The protocol for movement control will be as follows: Vertical Up Vertical Down Horizontal Right ASCII Character U D R Decimal Value 85 68 82 Hexadecimal Value 55 44 52 Horizontal Left Reset New Speed New Temperature L O S T 76 79 83 84 4C 4F 53 54 The “New Speed” and “New Temperature” characters will be followed by another octet containing the new speed (in number of degrees traversed per second) and the new temperature (in degrees Fahrenheit). The reason for choosing the Ethernet architecture for transmission between the PC and the microcontroller is due mainly to its ease of addressability, allowing transmission to multiple destinations over a single wired connection with a minimum of effort, as well as the packet structure of Ethernet, which works well with sending single, small-sized bursts of data to a specified location. Since a single microcontroller will minimally be controlling the two stepper motors, possibly the thermal management controller, as well as sending data back to the PC, it is important to have a technology which allows for ease of addressing to avoid having to hard-wire each of these interfaces using possibly several different transmission technologies and having to perform data manipulation to allow for the data from one source to be sent to another source with a different transmission format. Ethernet does just that; it allows for multiple types of data to be addressed and sent to specific locations, regardless of the content of the data. 3.4.2 Microcontroller to Stepper Motors The interface between the microcontroller and the stepper motors is one of the simpler interfaces to understand. The microcontroller must simply use the control data received from the PC to send a direction and a pulse signal to the stepper controller. This can be done using just two output pins which can be memory mapped to a specified location in the microcontroller’s memory. This allows the required output signals to be simply written to a memory location which will cause them to be transmitted to the motor controllers. The stepper controllers are preconfigured to handle these direction and pulse signals and output the required voltages to the motors to make them move the desired speed, direction, and number of steps. The direction signal takes the form of either a binary 1 or a binary 0. A binary 0 corresponds to a low signal which informs the stepper controller that the motor will be rotating in a certain direction (depends on the specific stepper controller). A binary 1 will cause the motor to rotate in the opposite direction. The pulse signal is output on a separate pin and is what actually causes the motor to rotate. Every time there is transition from low to high or high to low of the pulse signal, the motor will rotate one “step”. The frequency of these transitions will therefore dictate the speed at which the motor rotates. 3.4.3 Power Supply to Electrical Components All of the electrical components in this system will require some sort of power source. These electrical components include the microcontroller, the thermal element, and the thermal management component. Each component will have varying power requirements, such as differences in required voltage, maximum current, signal cleanliness, and so on. Specific components will have to be decided upon before the details of these interfaces can be described. 3.5 Major Sub-Component Definitions 3.5.1 Microcontroller The microcontroller represents the brains of the robotic arm. This is the component which receives command and control signals from the PC and determines what to do with these signals. The main function of the microcontroller for the robotic arm is to communicate with the motor controllers to cause the arm to be set in motion, either in the vertical or horizontal direction. The microcontroller is also responsible for accepting sensor data from the turntable assembly and forwarding this data back to the PC for display and logging. The microcontroller is especially important in this project because it provides the hub of integration between the robotic arm and the turntable. As such, it is important that the microcontroller be able to perform a wide variety of functions and have enough power and I/O pins to communicate with all of the external components such as the motor controllers, the PC, and possibly the thermal management component. The decision about which microcontroller to use will have to be delayed until more specific details about the other major project components have been decided upon. 3.5.2 Thermal Management This component is necessary to heat the infrared-emitting element on the robotic arm to a specific temperature and, perhaps more importantly, to monitor this temperature and ensure that it remains within 2°F of the desired temperature as specified by the project requirements. We have not yet decided on how best to implement this component, because it depends heavily on the specific type of heating element that we choose to use on the robotic arm. One all-encompassing and easy-to-implement solution would be to use a PID (proportionalintegral-derivative) temperature controller which uses a feedback loop to sense when the heating element has reached the specified temperature and ensures that it will remain at this temperature by continually receiving feedback from the element. One concern with this solution, however, is that we would like to potentially be able to control the temperature from the PC and we have not yet researched this component enough to know whether or not it is possible to control such a device remotely. 3.5.3 Thermal (Heating) Element The heating element is one of the most critical components of the entire robotic arm project. If this element does not emit infrared light in the correct range, then the robotic arm is nothing more than a mechanical apparatus that can move up, down, and side to side; it is therefore imperative that the heating element be chosen very carefully and exhibit all the required behaviors specified in Section 3.2.2: Thermal Specifications. Since this is such a critical component of the robotic arm, we have put much time and energy into researching available heating elements which emit infrared radiation similar to the skin on a human arm. Based on our research, which is described in depth in Appendix B: Heating Element Comparisons, we have found that a form of carbon black coating would be the best solution for the heating element on our robotic arm. Since carbon black emits blackbody radiation very closely approximating a perfect blackbody and has an emissivity of 0.88, it requires very low temperatures to cause the coating to emit infrared waves in the same spectrum as a human arm. Please see Appendix B for a more detailed discussion of the qualities of carbon black in relation to other infrared-emitting heating options. 3.5.4 Motors The robotic arm will be made to move by employing the use of stepper motors. There will be two stepper motors used, one for vertical motion and one for horizontal motion. Since only one type of motion is required at a time, only one motor will have to be active at a time. This is important because it greatly simplifies torque and strain calculations (which have yet to be made), reduces the complexity of the code to be executed by the microcontroller, and also reduces the total amount of power that the overall system will ever require at one time. For a detailed analysis of our choice to use stepper motors, please refer to Appendix C: Choice of Motors Comparison. 3.5.5 Robotic Arm The actual physical robotic arm is required to be specifically 18 inches long with 15 of the 18 inches being heated; in other words, there must be 15 inches of cylindrical, infrared-emitting material. Since the dimensions of the arm have been specified, the only variable aspect of this component is the material out of which it is to be made. It is important to take the weight of the material into account, as heavier materials will put more strain on the motors and require more torque to allow for controlled movement of the arm and non-jerked starting and stopping. An obvious possibility is the use of polyvinyl chloride (PVC) piping, as this is extremely inexpensive, durable, and moderately lightweight. However, it should also be noted that we will be required to heat 15 inches of the material. PVC cannot be directly heated, as no current can be passed into the plastic-like material. It is possible, however, to wrap some other material that can be heated, such as aluminum sheathing, around the PVC pipe and simply use the PVC pipe as a support for this heating element since PVC can easily withstand the low temperatures (less than 100°F) required to emit the necessary infrared waves. This is an area which we have yet to thoroughly research, and plan on looking at very soon. 3.5.6 Power Supply We have yet to decide upon an exact power supply that we will be using in this project, based on the need to first decide upon other electrical components and assess their power needs. We have, however, done fairly expansive research in the area of power sources, meaning that when the time comes to decide upon a specific power source, we will be able to make an informed decision without spending too much more time on research. For a look at our current stage of research and analysis, please see Appendix D: Power Supply Analysis. 3.5.7 Mounting Cart This cart provides the support for the robotic arm. Its only requirements are that it is able to be moved easily, it is able to hold all of the required cables and wiring going to and from the robotic arm, and it allows for the robotic arm to be mounted exactly 36 inches above the ground. This will be the last component which we will decide upon, as it is dependent upon the design specifications of the rest of the robotic arm and is also the easiest to procure. 3.6 Operational Concept The robotic arm apparatus will allow for the testing of infrared-based light sensors in a consistent and straightforward fashion. The arm will be operated from a remote location, such that testing will not be disturbed by movements or infrared emissions being produced by the operator. The operator will be able to move the arm in both the vertical and horizontal directions, and will be able to choose to move the arm continuously for any number of degrees up to 180° of rotation. Movement of the arm past 180° in either direction is not allowed. The current method of testing already employs the use of a robotic arm, but the results produced by this arm have proven to be unsatisfactory. Most notably, the infrared wavelength profile emitted by this arm has shown to be incorrect with respect to the profile of an actual human arm. The operation of the newly designed robotic arm will produce an infrared profile very similar to that of the average human arm, causing the IR-based motion sensor to behave similarly to how it would in a real-world situation. To begin testing, the robotic arm will first be heated to a temperature of 95°F, with leeway to increase or decrease temperature as necessary for optimal results. Once heated, the robotic arm will positioned in such a way as to correspond to one of the cells in the coverage area (as specified in Appendix A: Minor Motion Coverage Pattern), and will then be put through a set of movements including a combination of both vertical and horizontal motions which will test the sensitivity of the motion sensor at this angle and distance. Upon completion of these motions, a log of whether or not the sensor was activated will be stored in a centralized data file in the command and control apparatus. The robotic arm will continue to run through these motions for each cell in the coverage area until minor motion in all of the cells has been completely tested and logged. 4 Turntable Assembly 4.1 Sub-Project Description The goal of this sub-project is to improve the current testing process for the sensitivity parameters of Square D occupancy sensors. The improvements of this testing process are based on a foundation of decreasing the testing time and minimizing the required space for the testing process. The testing process divides the sensor occupancy coverage pattern into 84 cells. Minor motion must be verified in each of the cells through the movement of the robotic arm assembly. Rotation of the sensor will reduce the amount of movements required by the robotic arm. The utilization of the turntable assembly will minimize the number of measurements taken, thereby simplifying the occupancy testing procedure. 4.2 Operational Concept The turntable apparatus must be able to rotate within a certain degree value to ensure that the occupancy sensor meets the requirements set forth by NEMA. The current testing procedure allows for the positioning of the robotic arm at a certain distance away from the sensor. In addition, the arm is placed at a certain angle from the sensor between -90˚ and +90˚ from the centerline. Because this method is both tedious and inefficient, a new method has been proposed. Instead of having the robotic arm move to each designated square, the proposed system will allow for the turntable to rotate to a specific angle made by the centerline of the sensor and the fixed centerline of the room. In order for the proposed system to be effective, the turntable must be capable of rotating to every angle that was measured between the robotic arm and the fixed centerline of the current system. A table of the x-direction distance, the y-direction distance, the resultant distance, and the equivalent turntable angle can be referenced in Section 4.3: Design Verification. Interface components within the turntable assembly include communication between the GUI, turntable, and sensor. The turntable assembly will receive position information from the GUI and then rotate the sensor to the correct angle. The turntable assembly will then respond with verification that the rotation is complete. The turntable will be idle until it receives signals from the command and control assembly that the robotic arm has completed a movement. At this point, the sensor activation circuit will relay the status of the sensor light bulb to the command and control assembly. 4.3 Design Verification All distances were measured from the sensor to the center of the indicated cell. The angle values were rounded to the nearest tenth of a degree. Since rotating the turntable to a tenth of a degree would be very difficult to accomplish accurately, the turntable will be rotated at 1˚ increments. Angles with a tenth digit between 0.1 and 0.4 will be rounded to the lower whole number while the digits between 0.5 and 0.9 will be rounded to the higher whole number. This method will simplify the design and construction of the turntable. However, there is a possibility that the turntable could be at most 0.5˚ off from the center of the testing square where the robotic arm will be placed. This means that the actual turntable angle will be slightly larger or smaller than the desired angle. It is imperative that the maximum amount of skew be smaller than a certain value. As long as this criterion is satisfied, the rest of the angle calculations will be adequate. The desired calculation of an arbitrary cell will be calculated to ensure that the resultant distances are correct. A skew calculation will then be performed to ensure that it is below a certain maximum skew value. These calculations will then be performed on the rest of the cells in the coverage area to figure out the maximum skew distances. The sample calculation of the arbitrary angle is shown below. The arbitrary cell chosen to perform the desired angle calculation was cell 52, as numbered in Appendix A: Minor Motion Coverage Pattern. The center of cell 52 was measured to be -10.5 feet from the sensor in the x-direction and 16.5 feet from the sensor in the y-direction. The angle between the hypotenuse distance to the cell and the vertical axis at x = 0 will be calculated, as well as the magnitude of the hypotenuse to the center of the cell: (1) (2) According to the current system, the turntable assembly will be located 19.6 ft from the center of cell 52 at an angle of -32.5˚ from the vertical axis. To accomplish this same configuration in the proposed system, the robotic arm must be placed 19.6 ft from the turntable assembly. To achieve the desired angle of -32.5˚ in the current system, the turntable must rotate +32.5˚ from the vertical axis in the proposed system. This angle must now be rounded to +33˚ to satisfy the 1˚ increment criterion stated above. The robotic arm will not move from its position in cell 52, therefore the arm will remain 19.6 ft from the turntable. Now, the new x-distance and y-distance must be calculated as well as the difference between these new “skewed” values and the original desired values. An angle of -33˚ will be used in the following calculation to remain consistent with the current testing procedure. This calculation appears below: (3) (4) (5) (6) The values in parts (4) and (6) of the calculations above are the differences between the desired distances and the skewed distances. Both values are positive, which is equivalent to moving the robotic arm closer to the top left of cell 52. Figure 4-1 shows a diagram of cell 52 from the minor motion coverage pattern in Appendix A. Cell # 52 Position 1: Ideal robotic arm position Position 2: Skewed robotic arm position 3 feet 1.8 in. 1.2 in. 2.17 in. 3 feet Fi gure 4-1: Diagram of Cell 52 from Coverage Pattern Standards Position 1 in the diagram refers to the ideal robotic arm location, while position 2 refers to the robotic arm location once the 1˚ increment criterion has been stipulated. The total distance between position 1 and position 2 can be calculated using the following method: (7) The total distance between position 1 and position 2 was calculated to be 2.17 inches, which is the maximum skew value that the turntable assembly must account for. This skew is a reasonable value considering the overall distance between the robotic arm assembly and the turntable assembly. Since the skewed values do not greatly affect the occupancy sensor’s performance, the proposed system will be effective with the 1˚ increment turntable angle. 4.4 Turntable System Requirements Square D specified requirements for the turntable assembly that would ensure success and qualify for the NEMA testing standards. (Refer to http://www.nema.org/stds/wd7.cfm to view the standards.) 4.2.1 Physical Dimensions The requirements of the turntable apparatus dictate that the sensor must be 48 inches above the floor. This height is comparable to the height at which the sensor will actually be mounted on the wall of a room. The physical apparatus must be portable in order to ensure storage and a variable testing facility. 4.2.2 Rotation Specifications The turntable must be capable of rotating ± 90 ° with a resolution of 0.5 of a degree. These rotation specifications ensure each cell is tested to the standards of the requirements specified by NEMA. 4.5 Turntable System Diagrams TURNTABLE ASSEMBLY Power Supply Sensor on oti n ll M tio Ce rifica Ve Sensor Circuitry Turntable Microcontroller Sensor Data Motor Angle and Sensor Data Command and Control Signals Stepper Motors Ro bo Ass tic Ar em m bly PC Figure 4-2: Turntable Component Interaction Diagram Figure 4-2 shows the interactions and connections between the various components of the turntable assembly. Either one variable power source or more than one separate power sources will be required to collaborate with the turntable system and the robotic arm system. Command control will be sent from the user/PC. This control will designate the location of the robotic arm and the angle required of the sensor. The motor drivers will then rotate the turntable to the desired angle, wait for the response verifying completion of the robotic arm movement, and collect the motion data from the sensor. This data will then be sent back to the microcontroller to store the appropriate detection response in the PC and notify the robotic arm for the next movement. 5 Project Plan and Schedule To see Gantt Chart corresponding to this schedule, please refer to Appendix E. 6 Appendices 6.1 Appendix A: Minor Motion Coverage Pattern and Calculations 30 83 84 79 80 81 82 27 24 71 72 73 74 75 76 77 78 61 62 63 64 65 66 67 68 69 70 51 52 53 54 55 56 57 58 59 60 41 42 43 44 45 46 47 48 49 50 31 32 33 34 35 36 37 38 39 40 21 22 23 24 25 26 27 28 29 30 11 12 13 14 15 16 17 18 19 20 1 2 3 4 5 6 7 8 9 15 12 9 6 3 3 6 9 12 15 18 21 18 15 12 9 6 3 FEET 18 Square Number X Distance (ft.) 1 2 3 4 5 6 7 8 9 10 -13.5 -10.5 -7.5 -4.5 -1.5 1.5 4.5 7.5 10.5 13.5 Y Distance (ft.) 1.5 1.5 1.5 1.5 1.5 1.5 1.5 1.5 1.5 1.5 10 Distance (ft.) 13.6 10.6 7.6 4.7 2.1 2.1 4.7 7.6 10.6 13.6 Turntable Angle Adjustment (Degrees) 83.7 81.9 78.7 71.6 45.0 -45.0 -71.6 -78.7 -81.9 -83.7 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 -13.5 -10.5 -7.5 -4.5 -1.5 1.5 4.5 7.5 10.5 13.5 -13.5 -10.5 -7.5 -4.5 -1.5 1.5 4.5 7.5 10.5 13.5 -13.5 -10.5 -7.5 -4.5 -1.5 1.5 4.5 7.5 10.5 13.5 -13.5 -10.5 -7.5 -4.5 -1.5 1.5 4.5 7.5 10.5 13.5 -13.5 -10.5 -7.5 -4.5 -1.5 1.5 4.5 7.5 4.5 4.5 4.5 4.5 4.5 4.5 4.5 4.5 4.5 4.5 7.5 7.5 7.5 7.5 7.5 7.5 7.5 7.5 7.5 7.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 10.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 13.5 16.5 16.5 16.5 16.5 16.5 16.5 16.5 16.5 14.2 11.4 8.7 6.4 4.7 4.7 6.4 8.7 11.4 14.2 15.4 12.9 10.6 8.7 7.6 7.6 8.7 10.6 12.9 15.4 17.1 14.8 12.9 11.4 10.6 10.6 11.4 12.9 14.8 17.1 19.1 17.1 15.4 14.2 13.6 13.6 14.2 15.4 17.1 19.1 21.3 19.6 18.1 17.1 16.6 16.6 17.1 18.1 71.6 66.8 59.0 45.0 18.4 -18.4 -45.0 -59.0 -66.8 -71.6 60.9 54.5 45.0 31.0 11.3 -11.3 -31.0 -45.0 -54.5 -60.9 52.1 45.0 35.5 23.2 8.1 -8.1 -23.2 -35.5 -45.0 -52.1 45.0 37.9 29.1 18.4 6.3 -6.3 -18.4 -29.1 -37.9 -45.0 39.3 32.5 24.4 15.3 5.2 -5.2 -15.3 -24.4 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 10.5 13.5 -13.5 -10.5 -7.5 -4.5 -1.5 1.5 4.5 7.5 10.5 13.5 -10.5 -7.5 -4.5 -1.5 1.5 4.5 7.5 10.5 -4.5 -1.5 1.5 4.5 -1.5 1.5 16.5 16.5 19.5 19.5 19.5 19.5 19.5 19.5 19.5 19.5 19.5 19.5 22.5 22.5 22.5 22.5 22.5 22.5 22.5 22.5 25.5 25.5 25.5 25.5 28.5 28.5 19.6 21.3 23.7 22.1 20.9 20.0 19.6 19.6 20.0 20.9 22.1 23.7 24.8 23.7 22.9 22.5 22.5 22.9 23.7 24.8 25.9 25.5 25.5 25.9 28.5 28.5 -32.5 -39.3 34.7 28.3 21.0 13.0 4.4 -4.4 -13.0 -21.0 -28.3 -34.7 25.0 18.4 11.3 3.8 -3.8 -11.3 -18.4 -25.0 10.0 3.4 -3.4 -10.0 3.0 -3.0 6.2 Appendix B: Heating Element Comparisons Per thermal requirements, the improved robotic arm must produce a heat profile that can be adjusted from 80 to 120 degrees Fahrenheit, with an accuracy of at least 2 degrees. However, special consideration needs to be taken to ensure that the infrared profile being emitted by the arm matches that of a human arm. We will first discuss this profile, and then turn our attention to possible design implementations. Human Infrared Before the human emission spectrum can be discussed, we must first examine what infrared radiation is and where it lies on the electromagnetic spectrum. The figure above shows an electromagnetic spectrum with the infrared portions separated into their components. The longest wavelength of light that can be perceived by our eyes is approximately 760 nanometers, which also corresponds to the shortest wavelength categorized by infrared radiation. Infrared is divided into three sections: shortwave, medium-wave, and long-wave. Shortwave IR wavelengths range from about 760 nanometers to 2 microns. Medium-wave IR falls in the range of 2 microns to 4 microns, and long-wave IR radiation, also called IR-C, ranges from 4 microns all the way to 1 millimeter, marking the border between IR and microwave radiation. Our bodies, with their temperatures at around 305-310 Kelvin, produce an accurate blackbody curve with a peak wavelength of around 9.5 microns and a range from 7 to 14 microns, as derived from the following formula: The following figure shows a graphical representation of the human IR emission spectrum: While the first model of the robotic arm used a simple heating pad to produce temperatures equal to those produced by a human body, we will be considering three different approaches in order to not only match the proper temperature of a human arm, but also to match the emission spectrum that is produced. The next sections will discuss the positives and negatives of the following three possibilities: infrared diodes, tungsten wire, and carbon-soot based spray paints. Infrared-Emitting Diodes Simply put, a diode is either a filament or solid-state based device that produces a small range emission of radiation at a desired range. LEDs are a classic example of a diode used in most of today’s electronics, producing light in the visible range of the electromagnetic spectrum. We will be considering diodes that only output infrared radiation, which gravitates our search to filament-based emitters, since the materials needed to output infrared radiation are not included in a solid state device. The following graphic tabulates a list of modern infrared emitters used in thermal imaging calibration: The problems with this approach are immediately apparent, with the most prominent being that all of these diodes fail to produce the required wavelengths and the intensities are several orders of magnitude less than what is needed. Most of the applications for these diodes use wavelengths in the near-IR range, for example, in the use of TV remote controls. Secondary to the problem of wavelength emissions are those of radiation propagation. While the radiation profile of a human arm appears diffuse and spread out, these diodes are designed to emit radiation within a certain number of degrees, normally around 15°. What this means for our design is that many diodes would need to be utilized in order to cover the entire area of emission that is produced by a single human arm. This creates additional problems, mainly those of power consumption and temperature. In order to provide consistent power to the fifty or more diodes that would be needed to produce the correct emission profile, several amperes would be required. Temperature and safety is also a prominent concern, and most of the aforementioned diodes operate in a range centered around an average of 1073 degrees Kelvin in order to produce the wavelengths required. Not only would we have a robotic arm that could potentially electrocute someone, but it would also be far too hot to touch, and a PVC-based support would have to be replaced by a heavier ceramic or metallic surface, each of which have their own unique sets of problems. We find that this approach would be too unsafe and too costly to pursue. Tungsten Wire Tungsten, periodic number 74, is a corrosion-resistant metal that has been used in many industrial applications where acid is used in production. It has the highest melting point and the lowest vapor pressure of any metal, making it extremely useful for applications involving infrared emission, due to the high heat required to produce such radiation. A design for the robotic arm involving tungsten would require wire to be wrapped uniformly around the arm, covering the entire surface so that a diffuse profile could be obtained. However, after extensive research, it was found that this approach should be discarded due to safety concerns. In most filament applications resulting in noticeable emission levels of radiation, the filament comprising the tungsten wire must be heated to an excess of 1100 degrees Kelvin, far exceeding the heat that would be produced by a human body. Similar to the diodes, covering the arm in hot metal is not safe, and it should be noted that exposed filaments create an electrical hazard as well. Further discussion is not necessary, as the potential safety risks greatly outweigh the benefits regarding this approach. Carbon Black Soot Discussions with Dr. John Pearce at the University of Texas led to this last design approach which could be taken to produce infrared emission similar to that of a human arm. The human arm, under ideal conditions, produces a spectrum that nearly mimics that of a calculated blackbody emitter. Dr. Pearce recommended simple black spray paint with a carbon black pigment to produce nearly ideal blackbody emission. Carbon black is a common form of amorphous carbon soot found in many commercial applications today, including black dyes and tires. Coating an arm wrapped with a simple flexible heating element with carbon black paint should produce the necessary characteristics with a minimum of safety concerns. The figure above shows the emission spectrum of four different materials at 373 degrees K, with black matte paint having the top emissivity. The most important information contained in this graph is the working range of emissivity at the temperature measured, with highest emissivity being in the 7-14 micron range, which is exactly what is needed for the robotic arm. Applying carbon black paint to a flexible heater wrapped around the arm would be a cheap, and more importantly, a safe design approach. However, validation of this approach should be carried out next semester. We will be purchasing several different types of black paint, along with a heating element, and using an IR- sensitive camera to measure the wavelength emissivity produced by such an approach, thus satisfying ourselves that it is indeed equal to that of a human arm. 6.3 Appendix C: Choice of Motors Comparison An extensive study of possible rotational devices yielded the use of either servo or stepper motors with or without a gear reducer. The infrared-emitting, rotational portion of the arm must satisfy each of the following requirements: 1. 2. 3. 4. Controlled movement Vertical and horizontal movement, but not simultaneously Movement through 90° in one second Remain at a stationary position indefinitely Servo Motors The current arm implementation uses two servo motors, one for each of the horizontal and vertical axes. Servos are designed to operate precision controls and dials, change the position of light loads, and rotate or otherwise manipulate miniscule to light loads. While this would initially appear to be satisfactory for this project, the weight of the arm itself becomes a critical factor. The servo motors in the existing design have the highest rated torque of any commercially available model (100 ounces/inch), yet struggle to move the arm in a controlled manner at the desired 90° per second rotational speed (Requirements 1 and 3, respectively). As the block diagram to the right shows, servo motors are active devices, which means that they require constant feedback to maintain a stationary position when external torque is applied. If a servo does not receive feedback and the arm is in any position other than vertically down, a loss of feedback causes the arm to fall to the down position due to its weight. Using a servo system therefore requires the use of a constant active feedback loop, which places an undue CPU burden on the microprocessor. While this additional CPU load might not ultimately cause a problem, it is worth pointing out that it may cause the arm to lag in response to a control signal, or even fail to move at all. The problems mentioned above all contribute to producing the operational deficiencies observed in the current design. Since the servos are both underpowered and operate in an active, closed feedback loop, an uncontrollable oscillatory condition exists that causes the servos to constantly reposition themselves in an attempt to hold any non-down target location (left, right, up, out). This uncontrolled motion is due to the fact that while the micro-controller is calculating the necessary correctional feedback to overcome the previously measured gravitational moment torque on the servo, any additional instantaneous torque adds a downward component that is not calculable due to the time delay introduced by the feedback-calculate-resolve system. What this means is that the servo motors jerkily change direction several times a second to try and maintain a stationary position (failure of requirement 1). This overshoot of the intended target point requires the servos to reverse rotate, only to overshoot again, which requires another reverse rotate, etc. This unnecessary harmonic motion causes the servos to overheat after a short time (failure of requirement 4), as they are operating under too much load. A proportionalintegral-derivative (PID) system could be used to mitigate this oscillation, but due to the underpowered servos, the jerkiness can not be completely removed. It is worth pointing out that gear reducers could be used to lower speed and increase torque. Almost all commercially available servos have internal gear reducers already, so adding another gear box serves as a supplemental reduction. The problem with reducing servo speed is that it becomes hard to achieve the required 90 degrees of rotation per second. The reduction on the 100 ounce/inch servos is already so great that this requirement is barely met. Further reduction would result in a failure of this requirement. Stepper Motors Stepper motors sequentially move a finite fraction of a 360° rotation each time the 'step' pin receives an impulse. The direction is controlled by another pin that turns the motor one direction when low and the other direction when high. The number of steps per revolution is determined by both the stepper controller and the individual motor design. Specifically, the number of separate internal coil windings in the motor combined with whether or not half steps are supported by the controller determines the overall number of steps required for one complete revolution. Having more steps per revolution results in a higher number of possible angular positions and more torque, but a slower maximum number of revolutions per minute. On the other end of the spectrum, having fewer steps per revolution allows higher revolutions per minute to be achieved in the motor at a cost of lost torque and angular resolution. The optimal number of steps per revolution for this application should be very high, since high torque is needed and the arm does not need to reach rotational speeds in excess of 90° per second or 15 revolutions per minute (Requirement 3). Stepper motors are designed to produce much more torque than servo motors. While servo motors have a hard time producing more than 100 ounces per inch of torque, some of the largest stepper motors manufactured are used to propel commercial locomotives. Thousands of different stepper motors exist to span the gamut from grams/mm to tons/m. The amount of torque required for this arm will be considerably more than the current value of 100 ounces per inch, but should remain less than 400 ounces per inch. This torque increase will account for the additional weight of any other design improvements add to the arm. Unlike servo motors, stepper motors do not require feedback systems to determine position. Determining angular position is simple with a stepper motor: 1. Look up the current position 2. Subtract (#1) from absolute clockwise desired position in steps 3. Move (#2) steps clockwise 4. Store (#3) as current position In order to determine the initial position when the system is powered on, a trigger switch can be placed in a known angular position on each stepper motor (for example in the down position). When the system powers on, each stepper rotates until the switch trips. All subsequent steps are performed as described above. When the system needs to move to a new location, it simply looks up where it is, subtracts where it wants to be clockwise from where it is now, moves however many steps required to reach this new angle, and then stores this new position. As long as the microcontroller stores its current angular position each time it moves, no positional feedback system is required. The only consideration here is that if the torque limit of the stepper motor is exceeded, the stepper will 'skip' a step and rotate to the wrong position. If this occurs, the microcontroller will think it is at one position but will actually be in another. As long as the motor is not overtorqued, there is no need to worry about skipping. An easy way to determine if skipping has occurred is to periodically have the microcontroller move each stepper back to where it thinks the trigger switches are. If either switch fails to trigger on exactly the last step, skipping has occurred. Unlike servo motors, stepper motors do not need constant supervision by the CPU, as shown in the graphic to the right. Unless the CPU is sending pulses to the stepper controller to move, no interaction is necessary at all. When no pulses are received, the stepper controller simply holds its current position at maximum torque. This means that there is never any oscillatory motion. The worst case scenario becomes a single slip (nonoscillatory) that is discovered and corrected the next time both trigger switches should have been reached (in the previous example, this was at the down position). As the motors are designed to run at their full rated current at all times, thermal cooling is not an issue. The stepper controller sinks most of this current and requires a large heat sink to radiate heat. Most stepper controllers have variable current drive selectors so that the current can be reduced until a torque value just above the maximum holding force is obtained. This helps reduce the amount of heat generated and also conserves power. 6.4 Appendix D: Power Supply Analysis Powering the robotic arm focuses both collectively and individually on each of the three main electrical components: the motors, the thermal element(s), and the microcontroller. In order to operate, each of these devices require different voltages, current ranges, and power cleanliness factors. The electrical system breaks down to the following block diagram: In gen eral , the mic roc ontr olle r is the mos t sen sitive component of the electrical system. If periodic transients enter the CPU or memory circuits, data corruption occurs, which will cause poor system performance. For this reason, the microcontroller requires the most voltage and current regulation. This regulation can be achieved through an on-board, built-in power regulator, by using a separate power supply altogether removed from the rest of the system, or by using capacitors, inductors, and/or other components to regulate power from one centralized supply. Most microcontrollers operate between 3.3 and 12 volts DC. A low pass filter (essentially a large capacitor in parallel with the device) would effectively remove transients from the equation and would aid in leveling and normalizing the voltage. Regardless of what infrared-emitting device is used, neither a heated element nor LED emitters require highly regulated power sources. The IR devices need roughly 2 volts DC and will operate with AC line noise, large voltage sags, transients, etc. The heating element can operate on either DC or AC and also requires little to no regulation aside from an approximate voltage and current rating. While neither of these devices requires precision power control systems, it doesn't hurt to make the signal as clean as possible. The stepper controller is a current controlled device. The input voltage must be within a certain wide range (for example 5-48 volts), but the important power delivery requirement is that the maximum current necessary to hold the arm in place be deliverable by the power supply continuously. The voltage can change as long as the current remains the same. The use of inductors is helpful to stabilize current with a changing voltage. Whether the robotic arm should operate off of battery power or whether it should tie into the building mains via an outlet or other connection is an important design decision. If the device is battery powered, it can operate tether-less, which would be useful if the arm were to be made more mobile in the future, (Square D indicated that this feature would be a great addition in a future project). Assuming a wireless data communication protocol was to be used in conjunction with batteries, the arm could remain completely untethered during normal operation. Another perk is that clean, stable DC voltages are easy to maintain when batteries are used, as the battery acts as a reservoir that limits voltage fluctuations under normal operating conditions. One downside is that if AC voltages are required, DC to AC converters/inverters become necessary. Another drawback is that if tungsten heating elements are used as an infraredemitting source, this produces a large energy footprint and will require the implementation of a large battery bank. Also, heating sources operate more efficiently if they are implemented in the high current/low voltage AC realm, which as mentioned before will require the use of power converters. Infrared-emitting LEDs do not individually require a lot of power to operate, but the hundreds to thousands of diodes needed to mimic the thermal image of a human arm would cumulatively amount to a large power demand. Under such high load, batteries would require constant recharging. Since the test the arm performs can take the better part of a day, the use of batteries is questionable. While it appears that these drawbacks prohibit the use of batteries for the arm, if the carbon black paint were used in lieu of a tungsten heating element, the power demand would be significantly reduced. If this combination is used, a battery system would be feasible. The other potential power source is a tethered connection to the mains of the building through a 110 volt power socket. As DC power is required for the microcontroller and motors, a rectifier and reduction circuit would be necessary. The arm would lose its cordless status, but could run tests indefinitely. As mentioned previously, capacitive voltage stabilizers might be necessary for proper microprocessor operation. A major drawback is that the use of higher voltages requires many more safety considerations in order to lower the risk of shock or electrocution. Mistakes become more costly when using 110 volt AC power. In most cases, a person will not die if electrocuted at this voltage, but the possibility does exist where it does not under battery conditions. 6.5 Appendix E: Gantt Chart