Spring 2016 RoFi: Preliminary Design Documentation
Christopher Andelin (Project Manager)
Mario Ramirez (Systems Engineer)
Qui Du (Manufacturing Engineer)
Andrew Laqui (Electronics and Controls Engineer)
Henry Ruff (Electronics and Controls Engineer)
Table of Contents
Program Objectives
The objective of Project RoFi’s is to design and implement a compact biped robot based on the original RoFi design by Jonathan Dowdall as described on the Project Biped website and quoted here.
ROFI is the fifth prototype from Project Biped. It is a self-contained, bipedal robot that uses accelerometer feedback to balance. It has 12 DOF (degrees of freedom) and can walk around while avoiding obstacles using an ultrasonic range sensor. A small Android tablet in ROFI’s head provides the brains and an Arduino Mega provides the hardware interface.
All CSULB versions of RoFi add telerobotic control (including navigation) and monitoring of the robotic system by incorporating the Arxterra application and control panel.
The initial objective for the Spring 2016 project is to make operational the RoFi (Fifth Generation Robot), which was built during the Fall 2014 semester, as defined in the “BiPed Final Documentation.” The major change made in the Fall 2014 version of RoFi from the original, was to upgrade the head assembly to include a rotating mirror allowing the robot to view its surroundings.
Once operational this RoFi will run the course defined in the Mission Profile to the best of its abilities. The Spring 2016 version of RoFi will identify and correct any design problems identified during this test.
The major change to be incorporated into the 2016 semester’s RoFi is the replacement of the overlarge head with a more compact design. Identified changes include:
- Remove pan and tilt mirror assemble. While an Android or iPhone is still a requirement, vision may be provided by a commercially available periscope lens subassembly.
- Replace the Arduino Mega with an Arduino with a much smaller form factor.
- Replace the fuse and switch with more compact designs.
- Replace the polyfuse array with an SMT equivalent design.
- Replace all PCBs with custom designed SMT solutions.
Finally, the design will correct problems identified as part of the creativity exercise as documented in Creativity Section of the “Spring 2016 RoFi: Research Projects and Creative Exercise.” These include…
- Bolts screwed into a plastic frame, which can come loose over time.
- A running time of only 10 to 15 minutes.
- Cables that are exposed and can easily come loose.
- Moving parts that can cause harm.
Mission Profile
RoFi must complete an obstacle course on a figure 8 track. The course, shown in Figure 1, and located in VEC-501 was designed to validate RoFi’s design. The course will test RoFi’s ability to navigate in different directions and inclinations, over different surfaces, while keeping its balance.
Figure 1 The VEC-501 Course
As shown in Figure 2, the obstacle course will require RoFi to cross over a threshold, at approximately a 45° angle and a 2 cm height. From there RoFi must ascend an incline that is initially an 8° slope which then decreases to a 6° slope. Half way through the course RoFi must then start its descent down the incline towards the threshold again crossing over it at about a 45° angle proceeding towards its start position. Additionally, RoFi must acknowledge and avoid an object (i.e. a wall) and be able to traverse multiple types of surfaces which will include carpet, linoleum tile, and metal as defined here. All of this must be completed while using the Arxterra™ application as per requirements.
Figure 2 Course Details
*The above diagram was created in AUTOCAD™ 2014.
*Measurements were provided by the microSegway group, and confirmed by the microBiPed group as documented in the Micro BiPed Introduction.
Requirements
Program/Project
- Modifications to RoFi shall not exceed $320
- RoFi shall acknowledge and avoid objects within 3 feet
- RoFi shall traverse carpet, linoleum tile, and metal surfaces
- RoFi’s runtime shall be greater than 15 minutes
- RoFi shall cross over a threshold, at approximately a 45° angle and a height of 2 cm
- RoFi shall ascend an incline that is initially an 8° slope which then decreases to a 6° slope
- RoFi shall complete the figure 8 obstacle course through the Arxterra Application during finals week (Monday, May 9 – Saturday, May 14, 2016)
- Vision shall be provided through the onboard phone
Source: https://www.arxterra.com/fall-2015-microbiped-preliminary-design-documentaion/
Requirements (System/Subsystem)
Mario Ramirez (Systems Engineer)
- To satisfy requirement 1.5 and 1.6, RoFi shall use a gyroscope sensor to walk up an incline of up to 45 degrees.
a. A gyroscope sensor detects change in circular motion and orientation. Therefore a gyroscope sensor can be used for sensing: angular velocity, angle, and motion. Such sensors are used in items such as cameras, aircrafts, and space shuttles. This will therefore allow RoFi to adapt to inclines and accomplish requirement 1.7.
b. Our value of 45 degrees was obtained from the angle of the threshold within the obstacle course.
http://www5.epsondevice.com/en/information/technical_info/gyro/
- To satisfy requirement 1.2, RoFi shall use an ultrasonic sensor with a range of 3cm to 400cm.
a. An ultrasonic sensor emits sounds waves and are received back after reflecting off an object or surface. This type of sensor works on metal, nonmetal, clear, liquid, or solid materials. The received waves can calculate the distance from an object using echolocation similar to that of a bat. The previous semester’s ultrasonic sensor has a range of 3-400 cm. Other sensors have a range of 3-400cm. Our software will determine the range at which RoFi will avoid an obstacle. This distance will be determined once the head design is complete and we know the height placement for the sensor. An ultrasonic sensor will allow RoFi to detect and avoid objects even in the dark within an optimal range.
b. The optimal distance for RoFi to begin his avoidance maneuver will be tested.
http://www.ab.com/en/epub/catalogs/12772/6543185/12041221/12041229/print.html
http://www.seeedstudio.com/wiki/Ultra_Sonic_range_measurement_module#Introduction
- To satisfy requirement 1.3, RoFi shall have material with a coefficient of friction on the bottom of his feet.
a. The material that RoFi will have on his feet will be based on our research of what material allows RoFi to walk on multiple surfaces, but still be able to move freely.
- To satisfy requirement 1.4, RoFi shall use two Glacier 2600mAh 2S 7.4V LiPo Receiver Batteries
a. More information is found here https://www.arxterra.com/spring-2016-rofi-battery-trade-off-study/
- To satisfy requirement 1.7, RoFi shall use a power class 2 Bluetooth module, which has a range of 10 meters between the module and cell phone.
a. Bluetooth operates in a band of 2.4 to 2.485GHz. A Bluetooth module will allow for communication between a cellphone and our Arduino. From here we can use the ArxRobot app in order to control our Arduino which is ultimately controlling our robot.
https://learn.sparkfun.com/tutorials/bluetooth-basics/how-bluetooth-works
- To satisfy requirement 1.7, RoFi shall use servos that can supply a minimum torque of 288 kg*cm.
a. To insure that RoFi can walk the torque stated above is needed to move the largest mass attached to our servos. To calculate this torque we used torque=r*F*sin(theta). Where r is the distance and F is F=mass*gravity.
Link to the finalized torque report will be provided soon.
- To satisfy requirement 1.1, We shall:
a. Use 11 out of 12 servos from the previous group, one is broken and must be replaced.
b. Test sensors and use all operational components.
c. Re-use wires.
d. Allocate most budget resources to updating the Arduino and parts needed to implement our design on a smaller Arduino. These parts are referring to components such as servo drivers.
8. To satisfy requirement 1.8, We shall be implementing a parascope that attaches to the onboard phone
a. TBD
Product Breakdown Structure
System Block Diagram
Adapted from, https://www.arxterra.com/fall-2015-microbiped-system-block-diagram-update/
The sensors subsystem will be in charge of telling RoFi his next action. When the gyroscope senses an incline/decline this will alert the Arduino which ultimately leads to the Actuators subsystem to adapt accordingly based on our code. The same process will occur when the Ultrasonic sensor senses an object or a wall ahead of RoFi. Bluetooth is considered a sensor because it collects inputs from a source, in this case an Android phone, then sends that data to the Arduino thus telling RoFi what to do based on our code. The communication subsystem is connected to the sensors subsystem because through Bluetooth the Arduino will obtain information on the action it will take. The Power subsystem consists of the battery which has been tested for our overall system and a regulator to insure the safety of the system and the user(s). Our Actuator subsystem is our output, RoFi’s desired movement, based on our sensors and code
Interface Definitions
https://www.arduino.cc/en/Hacking/PinMapping2560
https://www.arxterra.com/project-documentation/
Taken from, https://www.arxterra.com/project-documentation/
This Eagle schematic shows direct connections from the sensors and actuators to the Arduino Mega.
Mechanical Design
Qui Du (Manufacturing Engineer)
Objectives for this Design
The Android device is attached to RoFi’s head to control the Aduino Mega board. A phone with dimensions 124.6 X 61.3 X 8.94 is used for this project. As Manufacturing Engineer, I need to design phone brackets that will attach to the android phone on RoFi’s head. After doing research on this topic, I have ended up with the “RoFi- Next Generation Head- DAREL” designed by Mike Pluma. I used the phone brackets prototype from this design to remodel brackets using SolidWorks that could fit with our android device dimensions.
SolidWorks 3D Modeling Design
The phone brackets attach to the back of the body base of RoFi. The screws go through the slots on the brackets and the holes in the body base. In this design, the bracket will support the phone in either verital or horizontal orientation. To achieve this goal, I design the width of each bracket to have the dimensions of half the phone’s width.
Width dimension of bracket=(width dimension of phone)/2 = 61.3/2= 30.65mm
Brackets Dimension Analysis Model (Printed parts from RoFi Project)
Source: http://web.csulb.edu/~hill/ee400d/Project%20Folder/Robots%20and%20Drones/BiPed%20Robot/RoFi%20Project/
SolidWorks Brackets Design
Step 1: SolidWorks model of right bracket:
Drawing modeling of right bracket:
Step 2: SolidWorks model of left bracket:
Drawing Model of left bracket
Step 3: SolidWorks model of the Android device
Phone’s dimensions: 124.6 x 61.3 x 8.94mm
Step 4: Assembly modeling and exploded view
The high sides of the brackets support the phone in the vertical orientation
Phone_Brackets_Vertical_Assembly
The high sides of the brackets support the phone in the horizontal orientation
Phone_Brackets_Horizontal_Assembly
Electronic System Design
Subsystem Descriptions
Henry Ruff (Electronics and Controls Engineer)
Servos:
The core part of ROFI utilizes 12 servos working together to create bipedal movement. Each of the servos will be controlled by appropriate code, to construct frame-by-frame animation of ROFI walking.
Gyroscope Testing:
In order to utilize the gyroscope for stabilization purposes, experiments will be conducted to read sample data from a force being applied, and then coding the servos to respond appropriately in order to correct ROFI’s center of balance, allowing him to recover from the force that was applied to him.
Ultrasonic Sensor:
The ultrasonic sensor will be appropriately tested to be able to have the servos respond in a way that allows for suitable avoidance of objects.
Power Consumption:
Applicable to all electronic aspects of the project, it is essential to the project to know the overall expected power consumption of ROFI. In this case, each component’s rated specifications can be used to calculate their power consumption, and altogether an estimate can be made for ROFI. Listed below are the maximum power consumption of each component, their datasheets, and the expected total.
As for the Arduino Mega in particular, the amount of current it draws is dependent on the amount of pins used, the code being run, and components of the Arduino board itself. Because of this, its power consumption will be measured once fully assembled.
Fritzing Diagram
Andrew Laqui (Electronics and Controls Engineer)
Fritzing Diagram:
The diagram shows a simple way of wiring the Arduino MEGA, Bluetooth communicator, accelerometer, and servos together using a breadboard and power supply. This is the beginning of how we will design our group’s PCB.
Fritzing Schematic:
The schematic is a more detailed depiction of how the parts will be wired together. The schematic shows on the Arduino MEGA which pins will be used. As seen in the schematic, all twelve PWM pins will be used for the twelve servos that are predicted to be used for RoFi.