Copyright. Nicholas Arden Paine

Size: px
Start display at page:

Download "Copyright. Nicholas Arden Paine"

Transcription

1 Copyright by Nicholas Arden Paine 2010

2 The Report Committee for Nicholas Arden Paine Certifies that this is the approved version of the following report: Design and Development of a Modular Robot for Research Use APPROVED BY SUPERVISING COMMITTEE: Supervisor: Sriram Vishwanath Jonathan W. Valvano

3 Design and Development of a Modular Robot for Research Use by Nicholas Arden Paine, B.S. Report Presented to the Faculty of the Graduate School of The University of Texas at Austin in Partial Fulfillment of the Requirements for the Degree of Master of Science in Engineering The University of Texas at Austin May 2010

4 Dedication I wish to dedicate this report to my family whose support and encouragement have been a constant source of inspiration.

5 Acknowledgements I would like to thank my Supervisor, Sriram Vishwanath, who saw potential in me and encouraged me to pursue a graduate degree. He has always supported my work and provided me with the opportunity to create something of value. He is an excellent Supervisor and a good friend. I would like to thank Jonathan Valvano whose expertise in embedded systems has made this work possible. His insightful feedback and enthusiasm in robotics have been a constant source of help with this project. I would like to thank Bill Bard whose continued interest in this work has provided both motivation and reassurance. This project would have not succeeded without many consultations from ENS lab tech support staff Paul Landers and Daryl Goodnight. When confronted with a roadblock, they were always able to help me overcome it. I would like to thank the many students who have worked at some point on this project. Proteus was not the product of one person s efforts. In particular I wish to thank Drew Stovall, Seth Gee, and Vidur Bhargava. 5/7/2010 v

6 Abstract Design and Development of a Modular Robot for Research Use Nicholas Arden Paine, M.S.E The University of Texas at Austin, 2010 Supervisor: Sriram Vishwanath This report summarizes the work performed for the design and development of the Proteus research robot. The Proteus design is motivated by the need for a modular, flexible, and usable autonomous robotic platform. To accomplish these goals, a modular hardware architecture coupled with low-power, high-computation processing is presented. The robot is subdivided into three layers: mobility, computation, and application. The interface between layers is characterized by well defined APIs and may be individually replaced to achieve different functionality. An efficient low-level event scheduler is described along with higher-level software algorithms for motion control and navigation. Experiments of Proteus robots are provided including field tests and collaboration with outside research institutions. vi

7 Table of Contents List of Tables... ix List of Figures...x Chapter 1: Introduction...1 Chapter 2: Technical Details...5 Design Methodology...6 Computation...6 Hardware...8 Hardware Implementation...10 Mobility Layer...11 Computation Layer...11 Circuitry...11 Software Implementation...12 Low-Level Event Scheduler...12 X86 to 9S12 Communication Interface...15 Motion Control...17 Chapter 3: Experiments...19 Field Test # Problems Encountered...20 Field Test # Problems Encountered...23 Cooperation with Auburn University...24 vii

8 Chapter 4: Conclusion...25 Appendix A: Proteus hardware as of Fall Appendix B: Microcontroller software organization...27 Appendix C: Initial version 2 computation layer design...28 Appendix D: Proteus PCBs...29 References...33 Vita...34 viii

9 List of Tables Table 1: Proteus embedded system command protocol Table 2: Sensor packet part Table 3: Sensor packet part ix

10 List of Figures Figure 1: Robot from previous group (version 0, Fall 2007) Figure 2: Robot from senior design project (version 1, Spring 2008) Figure 3: Current robot (version 2, Spring 2010) Figure 4: Separation of modular hardware... 9 Figure 5: Scheduler output Figure 6: x86 to 9S12 command protocol Figure 7: 9S12 to x86 command protocol Figure 8: Proteus robot configured for Field Test # Figure 9: Recorded position data of a Proteus robot performing autonomous GPS navigation Figure 10: Recorded position data for wireless throughput test Figure 11: Wireless throughput vs GPS latitude Figure 12: Proteus hardware as of Fall Figure 13: Microcontroller software organization Figure 14: Initial version 2 computation layer design Figure 15: 9S12 Extender PCB schematic Figure 16: 9S12 Extender PCB layout Figure 17: Battery charger PCB schematic Figure 18: Battery charger PCB layout Figure 19: Auxiliary Sense PCB schematic x

11 Figure 20: Auxiliary Sense PCB layout Figure 21: IR Switch PCB schematic Figure 22: IR Switch PCB layout xi

12 Chapter 1: Introduction A common problem in many fields of research today is the lack of rigorous testing and concrete implementations. Often, a researcher will develop a novel algorithm or idea and is only able to validate their research through simulation. Simulation is a valuable first step towards understanding how an algorithm behaves, but it is by no means a thorough, or even accurate, assessment of the characteristics or feasibility of the algorithm. Ideally, these algorithms should be implemented and tested in the real world as they are intended to be used. In doing so, new problems will arise and opportunities for improvement may appear. The challenge in meeting this goal is the difficulty of a) acquiring the diverse set of skills necessary to implement algorithms on real hardware and b) acquiring the resources to do so. This paper describes the design and development of the Proteus robot that was created to alleviate some of these problems. While robots may not be able to help in all scenarios, they may be useful as a distributed mobile platform for research within electrical engineering and computer science. This report provides an overview of the work performed during the past two years from Fall 2008 to Spring Most of this work was spent developing the Proteus robot from an initial rough prototype, improving it through two major iterations and building 38 more Proteus robots. Both the software and hardware of the Proteus robot have seen major overhauls, including support for the Player API and a shift to a modular hardware design. The robot has matured from a simple class project to a useful research platform. I also helped start the Pharos lab and have been mentoring several undergraduate students in association with the lab. There have been at least five class projects based on Proteus robots and there are more preparing to use them in the future. The Pharos lab has held two major field tests of algorithms running on multiple Proteus 1

13 robots, each showing promising results. I also helped facilitate a collaborative program with Auburn University where we sent six Proteus robots to Auburn for research use. This paper will describe this work in further detail and draw comparisons with other similar projects outside of UT. This paper refers to three major revisions of the Proteus robot. Figure 1 shows the robot before work on this project began. This version of the robot will be referred to as version 0. Figure 2 shows the robot one semester was spent redesigning it (version 1). Finally, Figure 3 shows the robot in its current state (version 2). Figure 1: Robot from previous group (version 0, Fall 2007). 2

14 Figure 2: Robot from senior design project (version 1, Spring 2008). Figure 3: Current robot (version 2, Spring 2010). 3

15 Similar robots to Proteus have been developed in the past. irobot[1] sells an educational version of its Roomba but is confined to indoor operation and low speeds. Another popular robot for research has been the Pioneer robot sold by Mobile Robots [2], which is larger and heavier than Proteus. Segway offers an array of mobile robot bases [3] but are relatively high cost. [4][5] and [6] are three other sources that specialize in smaller robots with limited mobility capability for research use. [7] takes a different approach and sells a robot that is simply a mobile stand on which to put a computer laptop. Most of the hardware on each these platforms is fixed and only a few are open source. Proteus offers more control over low-level system performance, is lightweight, includes an onboard x86 computer, and can perform well outdoors and indoors. The rest of this paper is organized as follows. Chapter 2 describes the technical details of the robot, starting with a discussion of design choices made in designing the Proteus robot and finishing with implementation details of both hardware and software. Chapter 3 briefly describes some of the experiments conducted using Proteus robots. Chapter 4 discusses future work to be done with Proteus and concludes the report. 4

16 Chapter 2: Technical Details The starting point for this work was the original Proteus prototype, which was the product of my undergraduate senior design project. The senior design project was commissioned by Dr. Sriram Vishwanath with the hope of creating a useful robot for wireless networking research scenarios. The same project had been pursued previous semesters by other groups, but there seemed to be several recurring issues with these designs. a) The end product was consistently crude in construction and usability. b) The main processor was a Freescale microcontroller which requires a proprietary development environment to program. c) There were at least three different power sources on the robot. As can be seen in Figure 1, little attempt was made to produce a long-lasting, robust design. Also visible is the numerous battery chargers attached to the many onboard power sources, making routine operation tedious and difficult. Our group focused on improving these three problematic areas using several key strategies. First, we moved all of the electronic components onto an aluminum plate, which would be mounted on top of the car chassis. This mounting scheme solved many of the mechanical issues encountered by the version 0 design. With components loosely dangling on a mobile platform, bumps and vibrations from the platform moving can cause connections to come loose. These free-hanging wires create a debugging nightmare and can potentially damage or destroy components. Our second key strategy was building the robot control system around an x86-based processor. The x86 processor is a very common processor with many operating systems and programs written for it. Most users would be much more accustomed to such a system. The product of the senior design project (version 1) was a robot that contained many of the same components as the current robot (version 2). Appendix A shows a 5

17 block diagram of Proteus version 1. Version 1 is built around the same x86 motherboard, and uses the same M3-ATX power supply as version 2. The major difference shown in the block diagram is the PIC Microcontroller, which was simply used to control the steering servo on the R/C car. Version 2 of the robot uses a programmable Freescale microcontroller to perform this operation along with much more functionality. For additional details on technical information pertaining to Proteus refer to the subversion repository [8] with credentials anon/anon. DESIGN METHODOLOGY The design of Proteus differs from many other robots due to its goal of flexibility and usability as compared to specialization at all costs. Much of the design comes in the form of improvements on features found previous revisions of the robot. This section focuses on design choices made in three areas of the robot. Computation The motivation for the some of the design choices made for the Proteus robot stemmed from a desire to ease the time overhead and learning curve required for a simple robotic platform. Many robotic platforms we had worked with required an archaic, proprietary interface for interacting with the robot. The reason for this is that small mobile robots are primarily constrained by power limitations. A robot has many parts that require power. Devices used for movement and sensing take up most of the power budget. For example, consider a remote controlled car. This is a machine with only movement, yet most commercially available remote controlled cars have a relatively short battery life. Adding sensors and a computer only reduces this time further. Without this small power envelope, designers are constricted in terms of sensing and computation power consumption. For this reason, sophisticated sensors and 6

18 computers are primarily found on large robots that can afford to carry a substantial power supply. On the other hand, small autonomous robots usually settle for low power computers. The lowest power computers available are microcontrollers. Microcontrollers require a good deal of engineering background to write software for, and use archaic, proprietary interfaces to program. Creating a small robot with long battery life and a common development environment seems like a difficult proposition. The solution to this problem lies in intelligent hardware design. An easy to use computer had to be something that would run a familiar operating system, such as Windows or Linux. Such operating systems are most commonly found on computers with an x86 processor. By using a low-power x86-based computer running Ubuntu Linux, many of the usability issues found on the version 0 design of the robot were avoided. One difficulty associated with using x86-based computers on a small platform is that commonly rely on the ATX form factor for power delivery. The ATX form factor uses a complex power interface that is usually achieved through the use of a large ATX power supply. Clearly a typical ATX power supply would not fit on a small robot. Also, ATX power supplies are powered from A/C power from the wall, which would also not be present on a small robot. To remedy this problem a vendor was found that offered small ATX power supplies that operated using D/C power as an input. This power supply allowed the delivery of power to the x86 board while retaining a compact design. A purely x86-based robot design does have drawbacks. Most x86 motherboards rely on standardized input/output (I/O) to communicate with peripherals. While it bolsters the robot's ease of use, this standardized I/O is difficult to interface to at a lower level. You cannot directly control a motor through USB. To do so, one would either have to design a separate system that converted USB packets into motor control signals. 7

19 Such a system would accomplish this through the use of a microcontroller. As we stated earlier, microcontrollers are generally less user-friendly than x86 computers. However, microcontrollers are essential for use in controlling low level signals, such as those used to control a robot. Because of this necessity, we included a programmable Freescale microcontroller in our design. The University of Texas Electrical Engineering department teaches students about embedded systems concepts on one system in particular, Freescale s 9S12. This microcontroller was selected primarily because it would be familiar to students at the University and would allow them to work in a familiar environment. It is fully capable of performing the tasks needed by the robot. Hardware The Proteus version 1 design aimed to simplify mechanical design by mounting all electronic components on a horizontal plate. Such a design occupied little vertical space and was application-specific. For example, sensors could be mounted for obstacle avoidance but if obstacle avoidance is not needed the space where the sensors mounted would go unused. For a robot that needs to be flexible, it did not make sense to continue using this hardware mounting scheme. For version 2, a modular design was implemented that would allow the user to configure the robot for a wide and potentially unknown array of applications. To do this, a design based on horizontal layers was chosen that provided stackable, packaged functionality (Figure 4). For example, the computation layer houses all core computing facilities but does not contain sensing or actuation elements. The computation layer provides minimum functionality needed for basic use, and can be built upon for more demanding applications. 8

20 Figure 4: Separation of modular hardware All mobile robots can be logically partitioned into subsections similar to those depicted in Figure 4. However, on other robots they are typically not physically separated as they are on Proteus. Conventionally mobile robots are designed for a single task or purpose. Once robotic components are assembled in a satisfactory manor such that they accomplish this task, there is no need to realize where these logical divisions lie. Because we are not designing a robot for one application, it is useful to maintain these boundaries. Achieving a modular design does present some challenges. First, modularity comes at the cost of spatial efficiency. A compact design is important, especially when mobility outdoors over rough terrain desired. A high center of gravity will cause a platform to become unstable and possibly flip over. We have addressed this constraint by making each layer as thin as reasonably possible. Secondly, a non-modular design simplifies the power distribution architecture. One solution to this issue is separate power supplies. The computation layer includes a battery so that its power is not dependant on what mobility base is currently being used. This feature also allows functionality without a mobility base, further simplifying the system if no mobility is 9

21 required. Additional advantages come in the form of system stability and repeatability. With complete decoupling from the electrically noisy power used by motors, delicate computer electronics are less likely to behave erratically. Because of limited fabrication capabilities, the design also needed to be easy to build. As a side effect, a design that is simple to fabricate can easily reduce the overall cost of the robot by decreasing both material usage and labor costs. Proteus version 2 reflects the ease-of-fabrication constraint very clearly. Layers are constructed from a single sheet of aluminum with an array of circular holes used for mounting components. Such a design is simple enough to enable replication of the robot by anyone with a hardware background. HARDWARE IMPLEMENTATION In addition to creating a robot that would work well for common use scenarios, it was important to retain fine-grain access to lower level functionality on the robot. As will be discussed in the Software Implementation section, Player[9] is used to simplify programming for the Proteus robot. Player is the most widely used robotic interface framework. It provides both software Application Programming Interfaces (APIs) and a network-socket-based communication framework. These two features alone make Player extremely useful to use. A Player-controlled robot primarily appeals to those working with high-level robot concepts such as algorithms. The user wants something that is simple and easy to use. There is another class of users who are interested in understanding how lower level tasks are accomplished, how circuits are built, and how the robot is controlled. It is a challenge to create one robot that works well for both class of users. 10

22 Mobility Layer To address the usability and transparency problem, and to allow reconfigurability, Proteus can use three different mobility platforms: a Segway, a Roomba, and a Traxxas car. Each of the three excels in particular mobility scenarios. The Roomba is a small, light-weight differentially-driven robot. It works well for slow speed indoor mobility. Both the Segway and the Traxxas car may be operated indoors or outdoors. The Segway is differentially-driven and heavy while the Traxxas uses Ackerman-steering and is relatively light-weight. The Roomba and Segway are directly supported by Player and work without the need for an externally programmable microcontroller. The Traxxas base, however, is a modified R/C car and is a completely custom platform. If the Traxxas base is to be used, a custom Player driver must be used. This Player driver communicates with the onboard microcontroller to control the Traxxas base. All three mobility platforms may be used with Player, but the Traxxas base provides the user the ability to directly change the low level software interfaces and controls. Computation Layer The computation layer is the central hub of the Proteus design and therefore has been the focus of much of the mechanical design. Version 1 used an oversized and crude aluminum sheet to house all of the components. One goal for version 2 was to minimize the area this plate used while retaining usability. Usability in this case can be defined to be a function of I/O accessibility, wire routing, and overall complexity. The initial design for the computation layer on version 2 can be found in Appendix C. Circuitry Not all of the components on the Proteus robot are commercial off-the-shelf (COTS) components that can be purchased and connected together easily. To create a 11

23 small and efficient design several circuits were implemented using custom printed circuit boards (PCBs). PCBs are necessary for reliability, repeatability, and fabrication reasons. PCBs are robust and tolerate vibration well. They can also be produced in large quantities relatively, easily which was crucial in the construction of a large number of robots. The PCBs have typically been simple two layer boards used for hardware interfacing. Schematics along with board layout can be found in Appendix D. Figures 15 and 16 show the 9S12 extender board, which puts minimal functionality for Traxxas base use onto the pins of the 9S12. Figures 17 and 18 show the battery charger board which provides battery charging without disconnecting the system load from the onboard battery. Figures 19 and 20 show the auxiliary sense board, which interfaces an array of different sensors to the 9S12 extender board. Figures 21 and 22 shows the IR switch board, which combines analog inputs from two infrared sensors, providing one analog output to the microcontroller. SOFTWARE IMPLEMENTATION Proteus robots allow access to many levels of software for development. Programming of Proteus robots has been conducted from the bottom up, first solidifying low level control and then building abstraction on top of these drivers. This section follows the same bottom-up structure, summarizing each level s contributions and touching on key software elements. Low-Level Event Scheduler The microcontroller is responsible for a) performing the real-time tasks associated with controlling the robot and b) providing an interface for control from the x86 board. Since the 9S12 has a single processor, it may only perform one action at a time. There is an inherent delay associated with performing multiple tasks and switching between them. 12

24 Therefore, it was important to carefully architect a scheduling system that would effectively manage switching between tasks. Appendix B shows six concurrent tasks that must run on the microcontroller, all of which are very sensitive to timing. Jitter on any of the tasks may cause data corruption or potentially data loss. The 9S12 is a processor with non-hierarchical interrupts. That is, interrupts may supersede foreground tasks, but another interrupt may not supersede an active interrupt. This means that the more time spent running background tasks, the higher the chance for jitter on high priority interrupts such as serial data latching, pulse width measurement, and control loops. There are many scheduling mechanisms for operating systems that handle multiple tasks that constantly compete for computing resources. These mechanisms would not work well for the Proteus embedded system however. The Proteus embedded system is characterized by multiple periodic events with relatively low computation needs and high timing sensitivity. A simple round robin scheduler would not be sufficient because of the high timing delay possible between events needing to be serviced and when they are serviced. The expected delay is one half of a full round robin period. A preemptive scheduler is much better in terms of timing delay, but is bulky and works best with a hierarchical priority system. A simple scheduler was created that was built for periodic events on the 9S12 architecture. With the scheduler the programmer may specify a number of periodic events, and the scheduler will map the periodic events into a time-continuous space. These events are then executed with minimum possible overhead. The scheduler is equivalent to using functions called from periodic hardware output compare interrupts except that the scheduler only uses one output compare interrupt. Additionally, since the 9S12 is a 16-bit processor, if a programmer wanted to achieve 32-bit resolution for periodic tasks they would typically rely on the timer overflow interrupt handler to 13

25 achieve this. The scheduler is built for 32-bit resolution and does this efficiently in software. The scheduler therefore increases code modularity and reduces hardware utilization. Example output of the scheduler can be seen in Figure 5. In this example, three periodic events are added to the scheduler. These events can be added in any order and at any point in time (i.e, they do not have to be added during initialization). The scheduler then schedules an output compare interrupt for the event that occurs next in time. Upon execution, the interrupt executes the specified task and schedules another interrupt for the next event in time. Figure 5: Scheduler output The described scheduling scheme has advantages and drawbacks. The main drawback is that scheduled functions are executed in the background so that the system is essentially stalled while this is happening. This means that the programmer has the important responsibility of ensuring that scheduled tasks execute as quickly as possible. 14

26 For example, the scheduler may be used to set a flag that a foreground loop constantly checks. A loose hierarchy can be achieved by the order the various flags are checked in the foreground. One might try to achieve a similar scheduling behavior by creating a static schedule and explicitly indicating when tasks should be run. The drawback to this approach is that you can never anticipate when sporadic events trigger input captures. For example, the robot uses a rotary encoder to measure wheel speed and to measure car velocity. This encoder produces non-periodic input capture interrupts that cannot be scheduled in advance and could interfere with a static schedule. Also, upon addition of a new event a consistent static schedule becomes harder to find and must be manually recalculated. For these reasons, the proposed scheduler operates dynamically. X86 to 9S12 Communication Interface With the low level control handled by the microcontroller, the x86 board is responsible for performing high level direction and relaying commands to the microcontroller. Initially, a high level control architecture was attempted from scratch. This involved too much effort and would likely not be simple to use by programmers in the future. It was then decided to incorporate Player into the design of the robot. A Player driver to interface with on-board microcontroller was created. The Player frontend provides the Player API, and the Proteus Player driver (back-end) translates these API commands, such as move forward, turn left, into commands that the microcontroller can use. These commands are then transmitted to the microcontroller over a serial cable. All communication between the x86 and the microcontroller is initiated by the software on the x86 side. If a response is necessary from the microcontroller, the x86 software waits for a response after its transmission. The move to a Player driven system has been 15

27 extremely useful in terms of simplifying outside development and encouraging code reuse. This project would likely be unsuccessful without this feature. The protocol used to transmit data from the x86 to the 9S12 is shown in Figure 6. The data is encapsulated by start and end bytes, which act as synchronization sentinels. These sentinels are detected by the incoming data interrupt service routine (ISR) on the 9S12 and allow it to efficiently buffer the inner command data. Once the end byte is received then a flag is set and the command is processed in the foreground. The protocol used to transmit data from the 9S12 to the x86 is shown in Figure 7. This protocol is simpler since the x86 code waits for a response from the 9S12 before continuing. This method of handling serial I/O could be an area of improvement in the future. 16

28 Table 1 through Table 3 show more detail on the communication protocol. Figure 6: x86 to 9S12 command protocol Figure 7: 9S12 to x86 command protocol 17

29 Table 1: Proteus embedded system command protocol OpCode Data Byte 1 Data Byte 2 PROTEUS_OPCODE_START PROTEUS_OPCODE_BAUD PROTEUS_OPCODE_CONTROL PROTEUS_OPCODE_SAFE PROTEUS_OPCODE_FULL PROTEUS_OPCODE_STOP PROTEUS_OPCODE_DRIVE VEL_MSB VEL_LSB PROTEUS_OPCODE_LEDS PROTEUS_OPCODE_SENSORS Sensor Pkt Num Data Byte 1 Data Byte 2 Table 2: Sensor packet part 1 Sensor Packet Number Data Byte 2 Data Byte 3 PROTEUS_ODOMETRY_PACKET DIST_MSB DIST_LSB Data Byte 4 Data Byte 5 Data Byte 6 PROTEUS_IR_PACKET IR1_MSB IR1_LSB IR2_MSB IR2_LSB IR3_MSB PROTEUS_SONAR_PACKET SN1_MSB SN1_LSB SN2_MSB SN2_LSB SN3_MSB PROTEUS_COMPASS_PACKET HEAD_MSB HEAD_LSB Table 3: Sensor packet part 2 Data Byte 7 Data Byte 8 Data Byte 9 Data Byte 10 Data Byte 11 Data Byte 12 Data Byte 13 IR3_LSB IR4_MSB IR4_LSB IR5_MSB IR5_LSB IR6_MSB IR6_LSB SN3_LSB SN4_MSB SN4_LSB SN5_MSB SN5_LSB SN6_MSB SN6_LSB Motion Control To maximize the flexibility of the robot s behavior, a powerful and flexible toplevel control architecture must be used. It is always possible to create optimized algorithms for particular situations, but a better design would allow for adaptation through modularity for a range of situations. Tests of Proteus robots in various scenarios 18

30 have been a necessity. Typically the required action to be performed is either remote control or some variation of autonomous navigation. Using Player, remote control is relatively trivial. Autonomous navigation encompasses many varieties of guided motion. The specific navigation Proteus pursues includes anything from simple odometry navigation to more complex feedback navigation using sensor fusion. David Anderson's JBot[10] is a simple yet effective robot used for long range outdoor navigation. The JBot is able to successfully navigate to a far-off waypoint and avoid obstacles while doing so. The software architecture JBot uses to accomplish this is called Subsumption [11]. Subsumption is a simple reactive architecture that separates different types of behaviors into various hierarchical levels which operate in parallel. On Proteus a multithreaded Subsumption data structure was created in C++ to facilitate a wide range of navigation tasks. This architecture enables the creation of several different behaviors that are able to combine to achieve various useful tasks. For example, an obstacle avoidance behavior is solely used to turn away from obstacles. By itself, the behavior is very simple and if implemented on a robot would create a robot that would tend to "run away" from any obstacles it encountered. Another behavior is a navigate behavior that may be configured in several different ways, depending on what sensors are available. This behavior, by itself, would make a robot drive towards a series of waypoints. It, again, is relatively simple and can be tested independently. When these two behaviors are combined using Subsumption, they create a more intelligent behavior similar to that of the JBot. Work has been done to maintain flexibility in the Subsumption implementation so that it may be used with any robot base and a wide range of sensors. 19

31 Chapter 3: Experiments FIELD TEST #1 The first field test of multiple Proteus robots was conducted at the Tony Burger Center in Austin, TX on October 5 th The goal for this test was to practice mobilizing multiple robots and test the feasibility of conducting large scale experiments. Ten robots equipped with GPS and compass sensors were used. The mobility software used a predetermined list to navigate to GPS waypoints autonomously. The end goal for this type of test was to collect wireless channel data while performing a certain mobility pattern. Autonomous navigation was required so that all network activity could be dedicated for the wireless networking experiment. Figure 8 shows a Proteus robot configured for Field Test #1. Figure 8: Proteus robot configured for Field Test #1 20

32 Problems Encountered There were a number of problems encountered during the first field test. The first problem was a hardware issue that prevented any of the robots from charging. A generator had been brought to provide electricity throughout the test. This generator had a ground fault circuit interrupt (GFCI) outlet that would trigger when charging the robots. This was the most critical issue because once the robots batteries were depleted we could no longer perform tests. A second problem was the lack of proper hardware testing before conducting the test. Before the test, both hardware and software had been validated on a single robot. During the test day, many of the robots were not fully constructed and certainly not tested. We experienced a few faulty sensors and cable connection issues that should have been easily detected before we arrived at the test site. The final large problem encountered was that of wide-scale test deployment and data collection. Each robot had to use a separate waypoint data file and the results had to be logged and ultimately recorded somehow. A robust system was not in place for performing this function. Many of the problems encountered were expected and uncovering them early one was an intentional goal of the first field test. Many of these issues were address for the second field test. FIELD TEST #2 The types of experiments targeted for the second field test were very similar to those intended for the first field test. Again, ten robots were taken to a large parking lot with GPS and compass sensors. In addition to simple mobility, the wireless throughput of mobile nodes was an experiment of interest. In order to mitigate the difficulties associated with large scale deployment, a sophisticated script system was developed that used a distributed version control system to deploy and record data across multiple robots. This proved to be much more effective than previous methods. 21

33 Promising results were obtained from two experiments conducted. The first experiment was a validation of the navigation capabilities of the robots. Figure 9 shows the latitude/longitude data as recorded by a robot following a series of GPS waypoints. The straight lines in the figure represent the ideal path prescribed to the robot as defined by successive GPS waypoints. The irregular path represents the actual sampled path the robot followed. Figure 9: Recorded position data of a Proteus robot performing autonomous GPS navigation Another experiment was run to record wireless throughput rates between mobile nodes. For this test one robot was placed on the ground and remained stationary throughout the test. A second robot was given a repeating sequence of two waypoints to follow. In doing so, the second robot would oscillate between two points, allowing 22

34 wireless throughput tests to be performed. Figure 10 shows the logged GPS data from the second robot for this test. Figure 11 shows the recorded wireless throughput as a function of GPS latitude. GPS latitude is representative of position and one can observe that the data throughput peaks at a particular latitude. Figure 10: Recorded position data for wireless throughput test 23

35 Figure 11: Wireless throughput vs GPS latitude Problems Encountered While the second test day was much more eventful than the first, there still were problems with robot reliability. By the end of the day there were only a fraction of the robots that would continue to perform consistently. The suspected cause of much of this instability was inefficient 9S12 code, along with poor battery life on the robots and on the separately powered handheld GPSs. Since the second test, the 9S12 code has been restructured, larger batteries have been installed on the robots, and a GPS sensor has been designed specifically for the Proteus robot. Further tests will decide whether these efforts have been successful. 24

36 COOPERATION WITH AUBURN UNIVERSITY Auburn University expressed interest in using Proteus robots for wireless networking research early in Over the next Summer, Fall, and Spring students working on the Proteus robots at UT built six robots to ship to Auburn. One of the six robots was equipped with a computer webcam to demonstrate remote video streaming from the robot. During March 2010, the six robots were shipped and two students from UT traveled to Auburn to supervise their arrival and subsequent use. The researchers at Auburn intend to use these robots to build a network test bed that also includes the use of aerial vehicles. 25

37 Chapter 4: Conclusion The main challenges that lie ahead involve creating applications for Proteus robots and continuing to build on the software infrastructure that has been established. Plans are in place to exhibit not only obstacle avoidance using Proteus robots but robotto-robot avoidance. Moving obstacles are more difficult because the time-to-collision is no longer a function of one robot s velocity. Also, other robots do not always present a surface that range finding sensors can detect reliably. Other forms of localization and navigation have become priorities. Vision-based navigation, for example, can be used to generate navigation algorithms. Line following gives researchers a simple way of creating a path for a robot to follow. These and other improvements should increase the number of useful experiments Proteus robots are able to perform. The Proteus robot has been presented as a tool to be used in validating research and for educational purposes. It has been designed to accommodate many different applications through the use of flexibility and modularity. Such modularity is achieved through clean hardware layout, a physically layered design, the robust Player software architecture, and decoupled motion control algorithm. Several successful tests of Proteus robots have been conducted and other research institutions have found the robot useful. The Proteus platform is well positioned to positively influence research at the University of Texas in the future. 26

38 Appendix A: Proteus hardware as of Fall 2008 Figure 12: Proteus hardware as of Fall

39 Appendix B: Microcontroller software organization Figure 13: Microcontroller software organization 28

40 Appendix C: Initial version 2 computation layer design Figure 14: Initial version 2 computation layer design 29

41 Appendix D: Proteus PCBs Note: See [8] for more detail. Figure 15: 9S12 Extender PCB schematic Figure 16: 9S12 Extender PCB layout 30

42 Figure 17: Battery charger PCB schematic Figure 18: Battery charger PCB layout 31

43 Figure 19: Auxiliary Sense PCB schematic Figure 20: Auxiliary Sense PCB layout 32

44 Figure 21: IR Switch PCB schematic Figure 22: IR Switch PCB layout 33

45 References [1] IRobot Create. [Online]. Available: [2] Mobile Robots Inc. [Online]. Available: [3] Segway Mobility Platforms. [Online]. Available: [4] Nomadic Robots. [Online]. Available: [5] K-Team. [Online]. Available: [6] Botrics. [Online]. Available: [7] ER1 Personal Robot System. [Online]. Available: [8] Proteus Subversion Repository. [Online]. Available: [9] The Player Project. [Online]. Available: [10] The Journey Robot. [Online]. Available: [11] R. A. Brooks, How to build complete creatures rather than isolated cognitive simulators, in Architectures for Intelligence. Erlbaum, 1991, pp

46 Vita Nicholas Paine is a graduate student and the University of Texas. He received his B.S. in Electrical Engineering in He intends to continue working in the field of robotics with a focus on agile robotic mobility. n.a.paine@gmail.com This report was typed by Nicholas Paine. 35

Semi-Autonomous Parking for Enhanced Safety and Efficiency

Semi-Autonomous Parking for Enhanced Safety and Efficiency Technical Report 105 Semi-Autonomous Parking for Enhanced Safety and Efficiency Sriram Vishwanath WNCG June 2017 Data-Supported Transportation Operations & Planning Center (D-STOP) A Tier 1 USDOT University

More information

CEEN Bot Lab Design A SENIOR THESIS PROPOSAL

CEEN Bot Lab Design A SENIOR THESIS PROPOSAL CEEN Bot Lab Design by Deborah Duran (EENG) Kenneth Townsend (EENG) A SENIOR THESIS PROPOSAL Presented to the Faculty of The Computer and Electronics Engineering Department In Partial Fulfillment of Requirements

More information

GPS System Design and Control Modeling. Chua Shyan Jin, Ronald. Assoc. Prof Gerard Leng. Aeronautical Engineering Group, NUS

GPS System Design and Control Modeling. Chua Shyan Jin, Ronald. Assoc. Prof Gerard Leng. Aeronautical Engineering Group, NUS GPS System Design and Control Modeling Chua Shyan Jin, Ronald Assoc. Prof Gerard Leng Aeronautical Engineering Group, NUS Abstract A GPS system for the autonomous navigation and surveillance of an airship

More information

Cedarville University Little Blue

Cedarville University Little Blue Cedarville University Little Blue IGVC Robot Design Report June 2004 Team Members: Silas Gibbs Kenny Keslar Tim Linden Jonathan Struebel Faculty Advisor: Dr. Clint Kohl Table of Contents 1. Introduction...

More information

AN AUTONOMOUS SIMULATION BASED SYSTEM FOR ROBOTIC SERVICES IN PARTIALLY KNOWN ENVIRONMENTS

AN AUTONOMOUS SIMULATION BASED SYSTEM FOR ROBOTIC SERVICES IN PARTIALLY KNOWN ENVIRONMENTS AN AUTONOMOUS SIMULATION BASED SYSTEM FOR ROBOTIC SERVICES IN PARTIALLY KNOWN ENVIRONMENTS Eva Cipi, PhD in Computer Engineering University of Vlora, Albania Abstract This paper is focused on presenting

More information

Team Autono-Mo. Jacobia. Department of Computer Science and Engineering The University of Texas at Arlington

Team Autono-Mo. Jacobia. Department of Computer Science and Engineering The University of Texas at Arlington Department of Computer Science and Engineering The University of Texas at Arlington Team Autono-Mo Jacobia Architecture Design Specification Team Members: Bill Butts Darius Salemizadeh Lance Storey Yunesh

More information

ECE 477 Digital Systems Senior Design Project Rev 8/09. Homework 5: Theory of Operation and Hardware Design Narrative

ECE 477 Digital Systems Senior Design Project Rev 8/09. Homework 5: Theory of Operation and Hardware Design Narrative ECE 477 Digital Systems Senior Design Project Rev 8/09 Homework 5: Theory of Operation and Hardware Design Narrative Team Code Name: _ATV Group No. 3 Team Member Completing This Homework: Sebastian Hening

More information

Undefined Obstacle Avoidance and Path Planning

Undefined Obstacle Avoidance and Path Planning Paper ID #6116 Undefined Obstacle Avoidance and Path Planning Prof. Akram Hossain, Purdue University, Calumet (Tech) Akram Hossain is a professor in the department of Engineering Technology and director

More information

University of Florida Department of Electrical and Computer Engineering Intelligent Machine Design Laboratory EEL 4665 Spring 2013 LOSAT

University of Florida Department of Electrical and Computer Engineering Intelligent Machine Design Laboratory EEL 4665 Spring 2013 LOSAT University of Florida Department of Electrical and Computer Engineering Intelligent Machine Design Laboratory EEL 4665 Spring 2013 LOSAT Brandon J. Patton Instructors: Drs. Antonio Arroyo and Eric Schwartz

More information

Development of a MATLAB Data Acquisition and Control Toolbox for BASIC Stamp Microcontrollers

Development of a MATLAB Data Acquisition and Control Toolbox for BASIC Stamp Microcontrollers Chapter 4 Development of a MATLAB Data Acquisition and Control Toolbox for BASIC Stamp Microcontrollers 4.1. Introduction Data acquisition and control boards, also known as DAC boards, are used in virtually

More information

Brian Hanna Meteor IP 2007 Microcontroller

Brian Hanna Meteor IP 2007 Microcontroller MSP430 Overview: The purpose of the microcontroller is to execute a series of commands in a loop while waiting for commands from ground control to do otherwise. While it has not received a command it populates

More information

Senior Design I. Fast Acquisition and Real-time Tracking Vehicle. University of Central Florida

Senior Design I. Fast Acquisition and Real-time Tracking Vehicle. University of Central Florida Senior Design I Fast Acquisition and Real-time Tracking Vehicle University of Central Florida College of Engineering Department of Electrical Engineering Inventors: Seth Rhodes Undergraduate B.S.E.E. Houman

More information

Part 1: Determining the Sensors and Feedback Mechanism

Part 1: Determining the Sensors and Feedback Mechanism Roger Yuh Greg Kurtz Challenge Project Report Project Objective: The goal of the project was to create a device to help a blind person navigate in an indoor environment and avoid obstacles of varying heights

More information

The Autonomous Vehicle Team from TCNJ Presents: NJAV New Jersey Autonomous Vehicle

The Autonomous Vehicle Team from TCNJ Presents: NJAV New Jersey Autonomous Vehicle The Autonomous Vehicle Team from TCNJ Presents: NJAV New Jersey Autonomous Vehicle Team Members Mark Buechel, Terence Nish, Nicholas Vacirca Required Faculty Advisor Statement: I hereby certify that NJAV

More information

Gregory Bock, Brittany Dhall, Ryan Hendrickson, & Jared Lamkin Project Advisors: Dr. Jing Wang & Dr. In Soo Ahn Department of Electrical and Computer

Gregory Bock, Brittany Dhall, Ryan Hendrickson, & Jared Lamkin Project Advisors: Dr. Jing Wang & Dr. In Soo Ahn Department of Electrical and Computer Gregory Bock, Brittany Dhall, Ryan Hendrickson, & Jared Lamkin Project Advisors: Dr. Jing Wang & Dr. In Soo Ahn Department of Electrical and Computer Engineering March 1 st, 2016 Outline 2 I. Introduction

More information

Project Final Report: Directional Remote Control

Project Final Report: Directional Remote Control Project Final Report: by Luca Zappaterra xxxx@gwu.edu CS 297 Embedded Systems The George Washington University April 25, 2010 Project Abstract In the project, a prototype of TV remote control which reacts

More information

I plan to build a four-legged robot with these objectives in mind:

I plan to build a four-legged robot with these objectives in mind: The problem I have been intrigued with the idea of building a walking robot that can perform a certain task. A walking robot in the future would have the potential to climb over difficult terrain. With

More information

Multi-Vehicles Formation Control Exploring a Scalar Field

Multi-Vehicles Formation Control Exploring a Scalar Field Multi-Vehicles Formation Control Exploring a Scalar Field Polytechnic University Department of Mechanical, Aerospace, and Manufacturing Engineering Polytechnic University,6 Metrotech,, Brooklyn, NY 11201

More information

LDOR: Laser Directed Object Retrieving Robot. Final Report

LDOR: Laser Directed Object Retrieving Robot. Final Report University of Florida Department of Electrical and Computer Engineering EEL 5666 Intelligent Machines Design Laboratory LDOR: Laser Directed Object Retrieving Robot Final Report 4/22/08 Mike Arms TA: Mike

More information

MULTI-LAYERED HYBRID ARCHITECTURE TO SOLVE COMPLEX TASKS OF AN AUTONOMOUS MOBILE ROBOT

MULTI-LAYERED HYBRID ARCHITECTURE TO SOLVE COMPLEX TASKS OF AN AUTONOMOUS MOBILE ROBOT MULTI-LAYERED HYBRID ARCHITECTURE TO SOLVE COMPLEX TASKS OF AN AUTONOMOUS MOBILE ROBOT F. TIECHE, C. FACCHINETTI and H. HUGLI Institute of Microtechnology, University of Neuchâtel, Rue de Tivoli 28, CH-2003

More information

EE 314 Spring 2003 Microprocessor Systems

EE 314 Spring 2003 Microprocessor Systems EE 314 Spring 2003 Microprocessor Systems Laboratory Project #9 Closed Loop Control Overview and Introduction This project will bring together several pieces of software and draw on knowledge gained in

More information

AC : MICROPROCESSOR BASED, GLOBAL POSITIONING SYSTEM GUIDED ROBOT IN A PROJECT LABORATORY

AC : MICROPROCESSOR BASED, GLOBAL POSITIONING SYSTEM GUIDED ROBOT IN A PROJECT LABORATORY AC 2007-2528: MICROPROCESSOR BASED, GLOBAL POSITIONING SYSTEM GUIDED ROBOT IN A PROJECT LABORATORY Michael Parten, Texas Tech University Michael Giesselmann, Texas Tech University American Society for

More information

A wireless positioning measurement system based on Active Sonar and Zigbee wireless nodes CE University of Utah.

A wireless positioning measurement system based on Active Sonar and Zigbee wireless nodes CE University of Utah. A wireless positioning measurement system based on Active Sonar and Zigbee wireless nodes CE 3992 University of Utah 25 April 2007 Christopher Jones ketthrove@msn.com Spencer Graff Matthew Fisher matthew.fisher@utah.edu

More information

12/31/11 Analog to Digital Converter Noise Testing Final Report Page 1 of 10

12/31/11 Analog to Digital Converter Noise Testing Final Report Page 1 of 10 12/31/11 Analog to Digital Converter Noise Testing Final Report Page 1 of 10 Introduction: My work this semester has involved testing the analog-to-digital converters on the existing Ko Brain board, used

More information

Behaviour-Based Control. IAR Lecture 5 Barbara Webb

Behaviour-Based Control. IAR Lecture 5 Barbara Webb Behaviour-Based Control IAR Lecture 5 Barbara Webb Traditional sense-plan-act approach suggests a vertical (serial) task decomposition Sensors Actuators perception modelling planning task execution motor

More information

Distributed Vision System: A Perceptual Information Infrastructure for Robot Navigation

Distributed Vision System: A Perceptual Information Infrastructure for Robot Navigation Distributed Vision System: A Perceptual Information Infrastructure for Robot Navigation Hiroshi Ishiguro Department of Information Science, Kyoto University Sakyo-ku, Kyoto 606-01, Japan E-mail: ishiguro@kuis.kyoto-u.ac.jp

More information

Saphira Robot Control Architecture

Saphira Robot Control Architecture Saphira Robot Control Architecture Saphira Version 8.1.0 Kurt Konolige SRI International April, 2002 Copyright 2002 Kurt Konolige SRI International, Menlo Park, California 1 Saphira and Aria System Overview

More information

Multi-channel telemetry solutions

Multi-channel telemetry solutions Multi-channel telemetry solutions CAEMAX and imc covering the complete scope imc Partner Newsletter / September 2015 Fig. 1: Schematic of a Dx telemetry system with 4 synchronized transmitter modules Introduction

More information

Formation and Cooperation for SWARMed Intelligent Robots

Formation and Cooperation for SWARMed Intelligent Robots Formation and Cooperation for SWARMed Intelligent Robots Wei Cao 1 Yanqing Gao 2 Jason Robert Mace 3 (West Virginia University 1 University of Arizona 2 Energy Corp. of America 3 ) Abstract This article

More information

Sensors and Sensing Motors, Encoders and Motor Control

Sensors and Sensing Motors, Encoders and Motor Control Sensors and Sensing Motors, Encoders and Motor Control Todor Stoyanov Mobile Robotics and Olfaction Lab Center for Applied Autonomous Sensor Systems Örebro University, Sweden todor.stoyanov@oru.se 13.11.2014

More information

Glossary of terms. Short explanation

Glossary of terms. Short explanation Glossary Concept Module. Video Short explanation Abstraction 2.4 Capturing the essence of the behavior of interest (getting a model or representation) Action in the control Derivative 4.2 The control signal

More information

Wireless Technology in Robotics

Wireless Technology in Robotics Wireless Technology in Robotics Purpose: The objective of this activity is to introduce students to the use of wireless technology to control robots. Overview: Robots can be found in most industries. Robots

More information

Control System for an All-Terrain Mobile Robot

Control System for an All-Terrain Mobile Robot Solid State Phenomena Vols. 147-149 (2009) pp 43-48 Online: 2009-01-06 (2009) Trans Tech Publications, Switzerland doi:10.4028/www.scientific.net/ssp.147-149.43 Control System for an All-Terrain Mobile

More information

ME375 Lab Project. Bradley Boane & Jeremy Bourque April 25, 2018

ME375 Lab Project. Bradley Boane & Jeremy Bourque April 25, 2018 ME375 Lab Project Bradley Boane & Jeremy Bourque April 25, 2018 Introduction: The goal of this project was to build and program a two-wheel robot that travels forward in a straight line for a distance

More information

Mapping device with wireless communication

Mapping device with wireless communication University of Arkansas, Fayetteville ScholarWorks@UARK Electrical Engineering Undergraduate Honors Theses Electrical Engineering 12-2011 Mapping device with wireless communication Xiangyu Liu University

More information

Israel Railways No Fault Liability Renewal The Implementation of New Technological Safety Devices at Level Crossings. Amos Gellert, Nataly Kats

Israel Railways No Fault Liability Renewal The Implementation of New Technological Safety Devices at Level Crossings. Amos Gellert, Nataly Kats Mr. Amos Gellert Technological aspects of level crossing facilities Israel Railways No Fault Liability Renewal The Implementation of New Technological Safety Devices at Level Crossings Deputy General Manager

More information

Motion Control of a Three Active Wheeled Mobile Robot and Collision-Free Human Following Navigation in Outdoor Environment

Motion Control of a Three Active Wheeled Mobile Robot and Collision-Free Human Following Navigation in Outdoor Environment Proceedings of the International MultiConference of Engineers and Computer Scientists 2016 Vol I,, March 16-18, 2016, Hong Kong Motion Control of a Three Active Wheeled Mobile Robot and Collision-Free

More information

Federico Forti, Erdi Izgi, Varalika Rathore, Francesco Forti

Federico Forti, Erdi Izgi, Varalika Rathore, Francesco Forti Basic Information Project Name Supervisor Kung-fu Plants Jakub Gemrot Annotation Kung-fu plants is a game where you can create your characters, train them and fight against the other chemical plants which

More information

Hybrid architectures. IAR Lecture 6 Barbara Webb

Hybrid architectures. IAR Lecture 6 Barbara Webb Hybrid architectures IAR Lecture 6 Barbara Webb Behaviour Based: Conclusions But arbitrary and difficult to design emergent behaviour for a given task. Architectures do not impose strong constraints Options?

More information

MEM380 Applied Autonomous Robots I Winter Feedback Control USARSim

MEM380 Applied Autonomous Robots I Winter Feedback Control USARSim MEM380 Applied Autonomous Robots I Winter 2011 Feedback Control USARSim Transforming Accelerations into Position Estimates In a perfect world It s not a perfect world. We have noise and bias in our acceleration

More information

Pick and Place Robotic Arm Using Arduino

Pick and Place Robotic Arm Using Arduino Pick and Place Robotic Arm Using Arduino Harish K 1, Megha D 2, Shuklambari M 3, Amit K 4, Chaitanya K Jambotkar 5 1,2,3,4 5 th SEM Students in Department of Electrical and Electronics Engineering, KLE.I.T,

More information

ECE 511: FINAL PROJECT REPORT GROUP 7 MSP430 TANK

ECE 511: FINAL PROJECT REPORT GROUP 7 MSP430 TANK ECE 511: FINAL PROJECT REPORT GROUP 7 MSP430 TANK Team Members: Andrew Blanford Matthew Drummond Krishnaveni Das Dheeraj Reddy 1 Abstract: The goal of the project was to build an interactive and mobile

More information

Exercise 5: PWM and Control Theory

Exercise 5: PWM and Control Theory Exercise 5: PWM and Control Theory Overview In the previous sessions, we have seen how to use the input capture functionality of a microcontroller to capture external events. This functionality can also

More information

Dynamics and Operations of an Orbiting Satellite Simulation. Requirements Specification 13 May 2009

Dynamics and Operations of an Orbiting Satellite Simulation. Requirements Specification 13 May 2009 Dynamics and Operations of an Orbiting Satellite Simulation Requirements Specification 13 May 2009 Christopher Douglas, Karl Nielsen, and Robert Still Sponsor / Faculty Advisor: Dr. Scott Trimboli ECE

More information

Hamdy Faramawy Senior Application Specialist ABB Sweden

Hamdy Faramawy Senior Application Specialist ABB Sweden Design, Engineering and Application of New Firm Capacity Control System (FCCS) Mohammed Y. Tageldin, MSc. MIET Senior Protection Systems Engineer ABB United Kingdom mohammed.tageldin@gb.abb.com Hamdy Faramawy

More information

Multi-Robot Coordination. Chapter 11

Multi-Robot Coordination. Chapter 11 Multi-Robot Coordination Chapter 11 Objectives To understand some of the problems being studied with multiple robots To understand the challenges involved with coordinating robots To investigate a simple

More information

DTMF Controlled Robot

DTMF Controlled Robot DTMF Controlled Robot Devesh Waingankar 1, Aaditya Agarwal 2, Yash Murudkar 3, Himanshu Jain 4, Sonali Pakhmode 5 ¹Information Technology-University of Mumbai, India Abstract- Wireless-controlled robots

More information

Lock Cracker S. Lust, E. Skjel, R. LeBlanc, C. Kim

Lock Cracker S. Lust, E. Skjel, R. LeBlanc, C. Kim Lock Cracker S. Lust, E. Skjel, R. LeBlanc, C. Kim Abstract - This project utilized Eleven Engineering s XInC2 development board to control several peripheral devices to open a standard 40 digit combination

More information

Advances in Antenna Measurement Instrumentation and Systems

Advances in Antenna Measurement Instrumentation and Systems Advances in Antenna Measurement Instrumentation and Systems Steven R. Nichols, Roger Dygert, David Wayne MI Technologies Suwanee, Georgia, USA Abstract Since the early days of antenna pattern recorders,

More information

Proposal Smart Vision Sensors for Entomologically Inspired Micro Aerial Vehicles Daniel Black. Advisor: Dr. Reid Harrison

Proposal Smart Vision Sensors for Entomologically Inspired Micro Aerial Vehicles Daniel Black. Advisor: Dr. Reid Harrison Proposal Smart Vision Sensors for Entomologically Inspired Micro Aerial Vehicles Daniel Black Advisor: Dr. Reid Harrison Introduction Impressive digital imaging technology has become commonplace in our

More information

Wheeled Mobile Robot Obstacle Avoidance Using Compass and Ultrasonic

Wheeled Mobile Robot Obstacle Avoidance Using Compass and Ultrasonic Universal Journal of Control and Automation 6(1): 13-18, 2018 DOI: 10.13189/ujca.2018.060102 http://www.hrpub.org Wheeled Mobile Robot Obstacle Avoidance Using Compass and Ultrasonic Yousef Moh. Abueejela

More information

CONTROLLING METHODS AND CHALLENGES OF ROBOTIC ARM

CONTROLLING METHODS AND CHALLENGES OF ROBOTIC ARM CONTROLLING METHODS AND CHALLENGES OF ROBOTIC ARM Aniket D. Kulkarni *1, Dr.Sayyad Ajij D. *2 *1(Student of E&C Department, MIT Aurangabad, India) *2(HOD of E&C department, MIT Aurangabad, India) aniket2212@gmail.com*1,

More information

Arduino Platform Capabilities in Multitasking. environment.

Arduino Platform Capabilities in Multitasking. environment. 7 th International Scientific Conference Technics and Informatics in Education Faculty of Technical Sciences, Čačak, Serbia, 25-27 th May 2018 Session 3: Engineering Education and Practice UDC: 004.42

More information

Flexible and Modular Approaches to Multi-Device Testing

Flexible and Modular Approaches to Multi-Device Testing Flexible and Modular Approaches to Multi-Device Testing by Robin Irwin Aeroflex Test Solutions Introduction Testing time is a significant factor in the overall production time for mobile terminal devices,

More information

UNIVERSITY OF VICTORIA FACULTY OF ENGINEERING. SENG 466 Software for Embedded and Mechatronic Systems. Project 1 Report. May 25, 2006.

UNIVERSITY OF VICTORIA FACULTY OF ENGINEERING. SENG 466 Software for Embedded and Mechatronic Systems. Project 1 Report. May 25, 2006. UNIVERSITY OF VICTORIA FACULTY OF ENGINEERING SENG 466 Software for Embedded and Mechatronic Systems Project 1 Report May 25, 2006 Group 3 Carl Spani Abe Friesen Lianne Cheng 03-24523 01-27747 01-28963

More information

Find Your Niche. RF Design

Find Your Niche. RF Design Find Your Niche RF Design Digital Hardware Design Software Design Digital Communications Theory Join Our Engineering Team Want to join a team of knowledgeable, experienced leaders in wireless digital technology?

More information

International Journal of Modern Trends in Engineering and Research e-issn No.: , Date: April, 2016

International Journal of Modern Trends in Engineering and Research   e-issn No.: , Date: April, 2016 International Journal of Modern Trends in Engineering and Research www.ijmter.com e-issn No.:2349-9745, Date: 28-30 April, 2016 MATLAB CONTROLLING COLOUR SENSING ROBOT Dhiraj S.Dhondage 1,Kiran N.Nikam

More information

Initial Project and Group Identification Document September 15, Sense Glove. Now you really do have the power in your hands!

Initial Project and Group Identification Document September 15, Sense Glove. Now you really do have the power in your hands! Initial Project and Group Identification Document September 15, 2015 Sense Glove Now you really do have the power in your hands! Department of Electrical Engineering and Computer Science University of

More information

Figure 1.1: Quanser Driving Simulator

Figure 1.1: Quanser Driving Simulator 1 INTRODUCTION The Quanser HIL Driving Simulator (QDS) is a modular and expandable LabVIEW model of a car driving on a closed track. The model is intended as a platform for the development, implementation

More information

Debugging a Boundary-Scan I 2 C Script Test with the BusPro - I and I2C Exerciser Software: A Case Study

Debugging a Boundary-Scan I 2 C Script Test with the BusPro - I and I2C Exerciser Software: A Case Study Debugging a Boundary-Scan I 2 C Script Test with the BusPro - I and I2C Exerciser Software: A Case Study Overview When developing and debugging I 2 C based hardware and software, it is extremely helpful

More information

UNIT VI. Current approaches to programming are classified as into two major categories:

UNIT VI. Current approaches to programming are classified as into two major categories: Unit VI 1 UNIT VI ROBOT PROGRAMMING A robot program may be defined as a path in space to be followed by the manipulator, combined with the peripheral actions that support the work cycle. Peripheral actions

More information

Dynamic Wireless Decorative Lights

Dynamic Wireless Decorative Lights Dynamic Wireless Decorative Lights John W. Peterson March 6 th, 2008 Updated August 2014 Overview Strings of holiday lights add a nice accent to indoor and outdoor spaces. Many businesses use them to create

More information

Final Design Report. Project Title: Multi-Function Pontoon (MFP)

Final Design Report. Project Title: Multi-Function Pontoon (MFP) EEL 4924 Electrical Engineering Design (Senior Design) Final Design Report 25 April 2012 Project Title: Multi-Function Pontoon (MFP) Team Members: Name: Mikkel Gabbadon Name: Sheng-Po Fang Project Abstract:

More information

Industrial Wireless: Solving Wiring Issues by Unplugging

Industrial Wireless: Solving Wiring Issues by Unplugging Industrial Wireless: Solving Wiring Issues by Unplugging Industrial Wireless - 1/6 Industrial environments are uniquely different from office and home environments. High temperatures, excessive airborne

More information

INTELLIGENT SPECTRUM MOBILITY AND RESOURCE MANAGEMENT IN COGNITIVE RADIO AD HOC NETWORKS. A Dissertation by. Dan Wang

INTELLIGENT SPECTRUM MOBILITY AND RESOURCE MANAGEMENT IN COGNITIVE RADIO AD HOC NETWORKS. A Dissertation by. Dan Wang INTELLIGENT SPECTRUM MOBILITY AND RESOURCE MANAGEMENT IN COGNITIVE RADIO AD HOC NETWORKS A Dissertation by Dan Wang Master of Science, Harbin Institute of Technology, 2011 Bachelor of Engineering, China

More information

WIRELESS THREE PHASE LINE FAULT MONITORING

WIRELESS THREE PHASE LINE FAULT MONITORING WIRELESS THREE PHASE LINE FAULT MONITORING Vaishnavi Kailas Pardeshi 1, Pooja Anil Kawade 2, Rutuja Ratanakar Kshirsagar 3 1,2,3 Department Electrical Engineer, Sandip Polytechnic, Nashik Maharashtra (India)

More information

L E C T U R E R, E L E C T R I C A L A N D M I C R O E L E C T R O N I C E N G I N E E R I N G

L E C T U R E R, E L E C T R I C A L A N D M I C R O E L E C T R O N I C E N G I N E E R I N G P R O F. S L A C K L E C T U R E R, E L E C T R I C A L A N D M I C R O E L E C T R O N I C E N G I N E E R I N G G B S E E E @ R I T. E D U B L D I N G 9, O F F I C E 0 9-3 1 8 9 ( 5 8 5 ) 4 7 5-5 1 0

More information

OBSTACLE EVADING ULTRASONIC ROBOT. Aaron Hunter Eric Whitestone Joel Chenette Anne-Marie Cressin

OBSTACLE EVADING ULTRASONIC ROBOT. Aaron Hunter Eric Whitestone Joel Chenette Anne-Marie Cressin OBSTACLE EVADING ULTRASONIC ROBOT Aaron Hunter Eric Whitestone Joel Chenette Anne-Marie Cressin ECE 511 - Fall 2011 1 Abstract The purpose of this project is to demonstrate how simple algorithms can produce

More information

Traffic Control for a Swarm of Robots: Avoiding Target Congestion

Traffic Control for a Swarm of Robots: Avoiding Target Congestion Traffic Control for a Swarm of Robots: Avoiding Target Congestion Leandro Soriano Marcolino and Luiz Chaimowicz Abstract One of the main problems in the navigation of robotic swarms is when several robots

More information

Preliminary Design Report. Project Title: Search and Destroy

Preliminary Design Report. Project Title: Search and Destroy EEL 494 Electrical Engineering Design (Senior Design) Preliminary Design Report 9 April 0 Project Title: Search and Destroy Team Member: Name: Robert Bethea Email: bbethea88@ufl.edu Project Abstract Name:

More information

Figure 1. C805193x/92x Capacitive Touch Sense Development Platform

Figure 1. C805193x/92x Capacitive Touch Sense Development Platform CAPACITIVE TOUCH SENSE SOLUTION RELEVANT DEVICES The concepts and example code in this application note are applicable to the following device families: C8051F30x, C8051F31x, C8051F320/1, C8051F33x, C8051F34x,

More information

A New Simulator for Botball Robots

A New Simulator for Botball Robots A New Simulator for Botball Robots Stephen Carlson Montgomery Blair High School (Lockheed Martin Exploring Post 10-0162) 1 Introduction A New Simulator for Botball Robots Simulation is important when designing

More information

Introduction to co-simulation. What is HW-SW co-simulation?

Introduction to co-simulation. What is HW-SW co-simulation? Introduction to co-simulation CPSC489-501 Hardware-Software Codesign of Embedded Systems Mahapatra-TexasA&M-Fall 00 1 What is HW-SW co-simulation? A basic definition: Manipulating simulated hardware with

More information

e-automatic MOTOR CONTROL SYSTEM

e-automatic MOTOR CONTROL SYSTEM e-automatic MOTOR CONTROL SYSTEM Mr. G.Venkata Prasad 1, Mr.P.Shanker 2 1,2 Assistant Professor, Department of CSE, Sphoorthy Engineering College, Hyderabad ABSTRACT In this paper e-automatic MOTOR CONTROL

More information

Experience Report on Developing a Software Communications Architecture (SCA) Core Framework. OMG SBC Workshop Arlington, Va.

Experience Report on Developing a Software Communications Architecture (SCA) Core Framework. OMG SBC Workshop Arlington, Va. Communication, Navigation, Identification and Reconnaissance Experience Report on Developing a Software Communications Architecture (SCA) Core Framework OMG SBC Workshop Arlington, Va. September, 2004

More information

PI: Rhoads. ERRoS: Energetic and Reactive Robotic Swarms

PI: Rhoads. ERRoS: Energetic and Reactive Robotic Swarms ERRoS: Energetic and Reactive Robotic Swarms 1 1 Introduction and Background As articulated in a recent presentation by the Deputy Assistant Secretary of the Army for Research and Technology, the future

More information

SENDORA: Design of wireless sensor network aided cognitive radio systems

SENDORA: Design of wireless sensor network aided cognitive radio systems SEVENTH FRAMEWORK PROGRAMME THEME ICT-2007-1.1 The Network of the Future Project 216076 SENDORA: Design of wireless sensor network aided cognitive radio systems Pål Grønsund, TELENOR WInnComm, Brussels,

More information

Abstract. 1. Introduction

Abstract. 1. Introduction Trans Am: An Experiment in Autonomous Navigation Jason W. Grzywna, Dr. A. Antonio Arroyo Machine Intelligence Laboratory Dept. of Electrical Engineering University of Florida, USA Tel. (352) 392-6605 Email:

More information

Implement a Robot for the Trinity College Fire Fighting Robot Competition.

Implement a Robot for the Trinity College Fire Fighting Robot Competition. Alan Kilian Fall 2011 Implement a Robot for the Trinity College Fire Fighting Robot Competition. Page 1 Introduction: The successful completion of an individualized degree in Mechatronics requires an understanding

More information

High Frequency Inverter Design Fundamentals. Chandrashekar DR April 19, 2010

High Frequency Inverter Design Fundamentals. Chandrashekar DR April 19, 2010 High Frequency Inverter Design Fundamentals Chandrashekar DR April 19, 2010 Agenda By the End of this session we will Understand different kinds of back up systems Discuss building blocks of basic inverter

More information

AN ARDUINO CONTROLLED CHAOTIC PENDULUM FOR A REMOTE PHYSICS LABORATORY

AN ARDUINO CONTROLLED CHAOTIC PENDULUM FOR A REMOTE PHYSICS LABORATORY AN ARDUINO CONTROLLED CHAOTIC PENDULUM FOR A REMOTE PHYSICS LABORATORY J. C. Álvarez, J. Lamas, A. J. López, A. Ramil Universidade da Coruña (SPAIN) carlos.alvarez@udc.es, jlamas@udc.es, ana.xesus.lopez@udc.es,

More information

An Arduino-based DCC Accessory Decoder for Model Railroad Turnouts. Eric Thorstenson 11/1/17

An Arduino-based DCC Accessory Decoder for Model Railroad Turnouts. Eric Thorstenson 11/1/17 An Arduino-based DCC Accessory Decoder for Model Railroad Turnouts Eric Thorstenson 11/1/17 Introduction Earlier this year, I decided to develop an Arduino-based DCC accessory decoder for model railroad

More information

Wide Area Wireless Networked Navigators

Wide Area Wireless Networked Navigators Wide Area Wireless Networked Navigators Dr. Norman Coleman, Ken Lam, George Papanagopoulos, Ketula Patel, and Ricky May US Army Armament Research, Development and Engineering Center Picatinny Arsenal,

More information

Sensors and Sensing Motors, Encoders and Motor Control

Sensors and Sensing Motors, Encoders and Motor Control Sensors and Sensing Motors, Encoders and Motor Control Todor Stoyanov Mobile Robotics and Olfaction Lab Center for Applied Autonomous Sensor Systems Örebro University, Sweden todor.stoyanov@oru.se 05.11.2015

More information

Requirements Specification Minesweeper

Requirements Specification Minesweeper Requirements Specification Minesweeper Version. Editor: Elin Näsholm Date: November 28, 207 Status Reviewed Elin Näsholm 2/9 207 Approved Martin Lindfors 2/9 207 Course name: Automatic Control - Project

More information

νµθωερτψυιοπασδφγηϕκλζξχϖβνµθωερτ ψυιοπασδφγηϕκλζξχϖβνµθωερτψυιοπα σδφγηϕκλζξχϖβνµθωερτψυιοπασδφγηϕκ χϖβνµθωερτψυιοπασδφγηϕκλζξχϖβνµθ

νµθωερτψυιοπασδφγηϕκλζξχϖβνµθωερτ ψυιοπασδφγηϕκλζξχϖβνµθωερτψυιοπα σδφγηϕκλζξχϖβνµθωερτψυιοπασδφγηϕκ χϖβνµθωερτψυιοπασδφγηϕκλζξχϖβνµθ θωερτψυιοπασδφγηϕκλζξχϖβνµθωερτψ υιοπασδφγηϕκλζξχϖβνµθωερτψυιοπασδ φγηϕκλζξχϖβνµθωερτψυιοπασδφγηϕκλζ ξχϖβνµθωερτψυιοπασδφγηϕκλζξχϖβνµ EE 331 Design Project Final Report θωερτψυιοπασδφγηϕκλζξχϖβνµθωερτψ

More information

SCOE SIMULATION. Pascal CONRATH (1), Christian ABEL (1)

SCOE SIMULATION. Pascal CONRATH (1), Christian ABEL (1) SCOE SIMULATION Pascal CONRATH (1), Christian ABEL (1) Clemessy Switzerland AG (1) Gueterstrasse 86b 4053 Basel, Switzerland E-mail: p.conrath@clemessy.com, c.abel@clemessy.com ABSTRACT During the last

More information

An Agent-based Heterogeneous UAV Simulator Design

An Agent-based Heterogeneous UAV Simulator Design An Agent-based Heterogeneous UAV Simulator Design MARTIN LUNDELL 1, JINGPENG TANG 1, THADDEUS HOGAN 1, KENDALL NYGARD 2 1 Math, Science and Technology University of Minnesota Crookston Crookston, MN56716

More information

Training Schedule. Robotic System Design using Arduino Platform

Training Schedule. Robotic System Design using Arduino Platform Training Schedule Robotic System Design using Arduino Platform Session - 1 Embedded System Design Basics : Scope : To introduce Embedded Systems hardware design fundamentals to students. Processor Selection

More information

A simple embedded stereoscopic vision system for an autonomous rover

A simple embedded stereoscopic vision system for an autonomous rover In Proceedings of the 8th ESA Workshop on Advanced Space Technologies for Robotics and Automation 'ASTRA 2004' ESTEC, Noordwijk, The Netherlands, November 2-4, 2004 A simple embedded stereoscopic vision

More information

EEL5666C IMDL Spring 2006 Student: Andrew Joseph. *Alarm-o-bot*

EEL5666C IMDL Spring 2006 Student: Andrew Joseph. *Alarm-o-bot* EEL5666C IMDL Spring 2006 Student: Andrew Joseph *Alarm-o-bot* TAs: Adam Barnett, Sara Keen Instructor: A.A. Arroyo Final Report April 25, 2006 Table of Contents Abstract 3 Executive Summary 3 Introduction

More information

Robot Navigation System with RFID and Ultrasonic Sensors A.Seshanka Venkatesh 1, K.Vamsi Krishna 2, N.K.R.Swamy 3, P.Simhachalam 4

Robot Navigation System with RFID and Ultrasonic Sensors A.Seshanka Venkatesh 1, K.Vamsi Krishna 2, N.K.R.Swamy 3, P.Simhachalam 4 Robot Navigation System with RFID and Ultrasonic Sensors A.Seshanka Venkatesh 1, K.Vamsi Krishna 2, N.K.R.Swamy 3, P.Simhachalam 4 B.Tech., Student, Dept. Of EEE, Pragati Engineering College,Surampalem,

More information

Page ENSC387 - Introduction to Electro-Mechanical Sensors and Actuators: Simon Fraser University Engineering Science

Page ENSC387 - Introduction to Electro-Mechanical Sensors and Actuators: Simon Fraser University Engineering Science Motor Driver and Feedback Control: The feedback control system of a dc motor typically consists of a microcontroller, which provides drive commands (rotation and direction) to the driver. The driver is

More information

Airborne Satellite Communications on the Move Solutions Overview

Airborne Satellite Communications on the Move Solutions Overview Airborne Satellite Communications on the Move Solutions Overview High-Speed Broadband in the Sky The connected aircraft is taking the business of commercial airline to new heights. In-flight systems are

More information

Cognitive robots and emotional intelligence Cloud robotics Ethical, legal and social issues of robotic Construction robots Human activities in many

Cognitive robots and emotional intelligence Cloud robotics Ethical, legal and social issues of robotic Construction robots Human activities in many Preface The jubilee 25th International Conference on Robotics in Alpe-Adria-Danube Region, RAAD 2016 was held in the conference centre of the Best Western Hotel M, Belgrade, Serbia, from 30 June to 2 July

More information

Multiple Antenna Processing for WiMAX

Multiple Antenna Processing for WiMAX Multiple Antenna Processing for WiMAX Overview Wireless operators face a myriad of obstacles, but fundamental to the performance of any system are the propagation characteristics that restrict delivery

More information

Prof. Emil M. Petriu 17 January 2005 CEG 4392 Computer Systems Design Project (Winter 2005)

Prof. Emil M. Petriu 17 January 2005 CEG 4392 Computer Systems Design Project (Winter 2005) Project title: Optical Path Tracking Mobile Robot with Object Picking Project number: 1 A mobile robot controlled by the Altera UP -2 board and/or the HC12 microprocessor will have to pick up and drop

More information

Path Following and Obstacle Avoidance Fuzzy Controller for Mobile Indoor Robots

Path Following and Obstacle Avoidance Fuzzy Controller for Mobile Indoor Robots Path Following and Obstacle Avoidance Fuzzy Controller for Mobile Indoor Robots Mousa AL-Akhras, Maha Saadeh, Emad AL Mashakbeh Computer Information Systems Department King Abdullah II School for Information

More information

Field Testing of Wireless Interactive Sensor Nodes

Field Testing of Wireless Interactive Sensor Nodes Field Testing of Wireless Interactive Sensor Nodes Judith Mitrani, Jan Goethals, Steven Glaser University of California, Berkeley Introduction/Purpose This report describes the University of California

More information

RECOMMENDATION ITU-R BS

RECOMMENDATION ITU-R BS Rec. ITU-R BS.1350-1 1 RECOMMENDATION ITU-R BS.1350-1 SYSTEMS REQUIREMENTS FOR MULTIPLEXING (FM) SOUND BROADCASTING WITH A SUB-CARRIER DATA CHANNEL HAVING A RELATIVELY LARGE TRANSMISSION CAPACITY FOR STATIONARY

More information