Difference between revisions of "The Gibbot"

From Mech
Jump to navigationJump to search
 
(39 intermediate revisions by the same user not shown)
Line 1: Line 1:
Question to the group: Where should we host the project? (Google Docs, Dropbox, GitHub, Google Code, SourceForge, etc.)
Questions for the group:
Where should we host the project? (Google Docs, DropBox, GitHub, Google code, SourceForge, etc.)


Below is a list of projects. Each project will have a team lead responsible for keeping everyone on track.
Below is a list of projects. Each project will have a team lead responsible for keeping everyone on track. We also ask that everyone is constantly documenting their work and that they develop a test suite along with their deliverables. The tests should include operation under “normal” operation, bad operating conditions (how do you gracefully recover?), and really bad operating conditions (how will the system persist without your module? What are the redundancies in the system?).


==Power module (1 person)==
==Power Module==
Build the charging station consisting of two metal pads, electrically isolated, with a smart charger on the back side of the wall. For now assume you are charging the 11.1 V batteries we have in the lab. The design challenge is in robustly delivering the power to the robot. A few ideas are:
Build the charging station consisting of two metal pads, electrically isolated, with a smart charger on the back side of the wall. The design challenge is in robustly delivering the power to the robot. A few ideas are:
* the wall has telescoping power leads to reach the robot.
* the wall has telescoping power leads to reach the robot.
* the robot has two spring-loaded contacts (springs, ball bearings?) to slide along the wall and make contact with the pads.
* the robot has two spring-loaded contacts (springs, ball bearings?) to slide along the wall and make contact with the pads.
* the robot has contacts mounted on solenoids to extend and retract.
* add mechanical magnetic clamps to the two pads to be able to support the weight of the gibbot.
* add mechanical magnetic clamps to the two pads to be able to support the weight of the gibbot.
* inductive charging (replace batteries with supercapacitors?)
* Have the pads provide raw power and have the smart charger onboard
<!--Milestone: Show batteries can be charged when the robot is in contacts with the module. Also, show a prototype circuit outputting the fully charged and recharge signals. Give PCB designer (see below) the inputs and outputs of module.


Deliverable: Working setup including, a PCB with LEDs to indicate charge level (battery gauge) capable of sending signals to PIC when fully charged and when batteries are low. -->
Milestone: Show batteries can be charged when the robot is in contacts with the module. Also, show a prototype circuit outputting the fully charged and recharge signals. Give PCB designer (see below) the inputs and outputs of module.


==Robot Frame==
Deliverable: Working setup including, a PCB with LEDs to indicate charge level (battery gauge) capable of sending signals to PIC when fully charged and when batteries are low.
We want to build a larger version of the Gibbot. The links should be between 12-18 inches long. Currently, everything is pretty cramped inside the robot and we will need more space if we want to lug around a higher capacity battery. We are considering using two 22.2 V, 1 lb Li-Po batteries that are 145 x 45 x 35 mm (5.71 x 1.77 x 1.38 in) that can supply up to 45 A continuous current. This project consists of three very important components:
* motor selection and modeling
* frame design, especially passing power, data, and control signals across the two links
* powering the magnets which have to be attached to the wall while the robot rotates about its pivot point; assume we are using electromagnets.
While you can assume that the robot will have some netting or soft landing material underneath it in the event of a fall, the frame should still be strong. The robot should be expected to tow up to 10 lbs, including its own frame. The rest of the weight will come from the batteries, motor, and electronics. With this load, the motor should be selected so that the robot can still swing uphill. Is it possible to design a clutch mechanism? For the winter term, we would like to see a base frame constructed with a motor and magnets fully operational. We would also like to see the motor have its own PCB module. The module should have an H-bridge, encoder and current sensing circuitry, and perform simple PID tracking of trajectories.


==Vision System==
==Robot frame (2 people)==
Build a vision system that can track the robot at all times. Assuming a steel sheet that is about 6 ft x 8 ft, the camera needs to be calibrated so that it outputs real-world coordinates. The major components of this project are:
Mechanical: Select a material that can withstand falls of ~15 ft of a 10 lb robot. Select a motor that will allow the robot go uphill with weight of frame + batteries + electronics. Ideally the motor would be backdrivable. Is it possible to design a clutch mechanism? The links should be between 12-18 inches. The frame will most likely undergo a minor revision in the spring term once all other components are finalized. For the winter term, a base frame should be constructed that can test the motor such that the robot is capable of moving uphill. We can add weights inside the frame to test the expected payload.
* calibration of a wide-angle lens, which can be fitted with a special color filter

Electrical: A motor model + motor control PCB module should be built. The module should be able to sense current and perform simple PID tracking.

Deliverables: Rugged frame (with padding inside for components?) that can withstand falling from sheet. With one link clamped (can use a vice with a rod sticking out to attach frame), frame should be able to use its motor to reach heights above the pivot link. PCB motor module with h-bridge, encoder circuit, and current sensing. PIC32 should have FF and FB model running (should have motor constant, Coulomb + viscous friction model, etc.).

Milestone: Frame (being) built and motor modeled. Give PCB redesigner (see below) the inputs and outputs of module.

Side Projects: Can frame deploy parachute for soft landing? Can a clutch be added? Should we pursue pancake motors? Use two motors at joint, one on each link, but with shafts coupled so only one needs to be active. The other is a generator while inactive, can we reuse the power generated to recharge the batteries?

==Vision (2 people)==
Build a vision system that can track the robot at all times. Assuming a steel sheet that is 6 ft x 8 ft, the camera needs to be calibrated so that it outputs real-world coordinates. This project will consist of:
* calibration of a wide-angle lens, special color filter
* robust wireless communication (IR, XBee, other)
* robust wireless communication (IR, XBee, other)
* robust tracking, where should the LEDs be placed on the robot?
* robust tracking
The calibration of the camera will involve selecting a camera and calibrating it as well as purchasing a PC to read in and transmit the camera images. The wireless communication should be a reliable link between the camera and robot. The vision tracking software should contain a suite of algorithms to track the robot on the wall. What is the best design that includes as many redundancies as possible? While the camera is being selected the tracking and communicating can be done with a webcam as a stand-in.

<!-- Milestone: The receiver should be a function on the PIC that returns an (x, y) location using a unit of metric length. Camera should be chosen and calibrated. Give PCB redesigner (see below) the inputs and outputs of module.
Tracking and communicating can be done on a webcam
Deliverables: For the camera, a Gibbot tracking algorithm as well as a calibrated lens for picking up the robot’s location. -->

Milestone: The receiver should be a function on the PIC that returns an (x, y) location using a unit of metric length. Camera should be chosen and calibrated. Give PCB redesigner (see below) the inputs and outputs of module.

Deliverables: For the camera, a Gibbot tracking algorithm as well as a calibrated lens for picking up the robot’s location.

==Smart Wall (2 people)==
Mechanical: For prototyping any size wall and material is fine.

Electrical: Wire up the LED sensors (1- or 2-inch spacing). For both run a calibration routine that can pick up the location of the robot. How large of a PCB can we order of the LED array? Build a PIC32 library that can take in the image and LED data and produce the robot’s location. The idea here is to build a prototype that is easy to scale up for spring term.

Deliverables: A mockup showing a gridded wall with an emitter/detector pair inside each grid pulsing its location (let’s call these guys the transmitters). Communications protocol should be a simple IR protocol (copy same one for TV remotes). Demo must show onboard Gibbot circuitry (the receiver) picking up the transmitter signal. Should also output data to PC via XBee. Must make sure that work can be scaled up to an 8ft. x 6 ft. wall. What are the power and component requirements as we scale up?

Milestone: Idea of artistic use for wall. small scale PCB circuitry showing receiver and transmitter talking to each other. The receiver should be a function on the PIC that returns an (x, y) location. Give PCB redesigner (see below) the inputs and outputs of module.

==PCB redesign (1.5 people)==
Electrical: current sensor, position sensor, gyro, accelerometer, ext. Flash for data logging, send info back to PC, easy to maintain and replace parts. PCB board, fix old board mistakes and add debug terminals (e.g., pads to quickly read the analog signals on scope)

Deliverables: PCB should be able to interface with rotary sensors, gyros, and accelerometers. There should also be a data logger to external flash present, so we can record and playback sensor info for debugging. Designer needs to also make sure that PCB modules of other projects will fit into PCB design and that modules can be easily tested. Documented library of functions with example code on usage. Documentation should also include resolution of sensors and conversion from sensor units to real world units.


==Main PCB Design==
This project involves improving upon the existing PCB, for example, better connectors between components, moving the H-bridge onto the actual PCB board, and integration of modules from other groups. There are various important control and data signals running across the PCB, but the signals are not easily accessible. The redesign should include breaking out certain signals (e.g., sensors) for easy debugging on an oscilloscope. We also need a good characterization of the on-board sensors. How long can we rely on the sensors for tracking the robot before there is too much error accumulation. The PCB currently has a current sensor, position sensor, gyro, accelerometers, and an XBee onboard. Are these parts easy to maintain and replace? Are there better variants out there? We also want to record data to an external Flash card for data logging and send info back to PC through wireless communication. When transmitting to the PC, the user should have a way of (securely) controlling the robot remotely and querying it for useful information.
<!-- Deliverables: PCB should be able to interface with rotary sensors, gyros, and accelerometers. There should also be a data logger to external flash present, so we can record and playback sensor info for debugging. Designer needs to also make sure that PCB modules of other projects will fit into PCB design and that modules can be easily tested. Documented library of functions with example code on usage. Documentation should also include resolution of sensors and conversion from sensor units to real world units.
Milestone: PCB components, size, and locations should be finalized. Final sizes should be given to the Frame project. Additionally, module sizes of other projects should be given to the respective module designers.
Milestone: PCB components, size, and locations should be finalized. Final sizes should be given to the Frame project. Additionally, module sizes of other projects should be given to the respective module designers.
Side Projects: Can we replace the XBee with something smaller and faster? -->
<!-- ==Rotary Magnets==
Can we design and build a rotary magnet similar to what is in the current Gibbot? Ideally, it would have lower power consumption. It was initially designed to hold the weight of the robot on an 1/8'' thick wall, which we have since doubled to 1/4''. -->


==Electropermanent magnets==
Side Projects: Can we replace the XBee with something smaller and faster?
Can we design and build a rotary magnet similar to what is in the current Gibbot, but with electropermanent (EP) magnets? It would have to consume under 16 W and have a holding force in the ballpark of 300 N for the magnet to be a worthwhile replacement to the electromagnet.

==EP magnets (1 person)==
<!-- ==Wheel Carriage (1 person)==
Build wheel carriage prototype. If it works well think of integrating it into the gbot design for spring term. -->
Build and characterize an EP magnet. Do we get the expected power savings? For building an EP just follow Knaian thesis. 22.2 V batteries can provide up to 45 A continuous.

Deliverable: An EP magnet capable of 300 N holding force and a model of the magnet’s BH curve (don’t know exactly how to measure this).

Milestone: Ability to reverse polarity of Alnico magnet and holding force data of magnet when switched on.


==The (current) Gibbot==
==Inductive power module==
We would like to get the Gibbot doing gymnastics on the wall. What can we actually do with the current version of the robot and how can we use what we know about it to guide the next iteration of the robot for the MSI? This project will require building a model of the current robot and identifying the limitations of the current design.
Same specs as power module, but with inductive charging (i.e, with no physical contact between the wall and the robot). Challenges would be dealing with EMI. Could we get away with not using batteries and instead use supercapacitors with inductive charging?


==Smart Wall==
==Wheel Carriage (1 person)==
We need an alternative form of position sensing for the robot beyond a camera. An alternative that we believe would work is to wire LEDs (1- or 2-inches apart) on the steel sheet. The robot would then pick up a pulse-encoded signal from the LED telling the robot where it is. Constructing the smart wall isn't a problem, it's maintaining it. If we look at 2-inch spacing, then for a 48 sq. ft. wall we are looking at 1,728 LEDs. If one burns out, how will an MSI employee find the LED and replace it with ease? If this problem is intractable because of scaling, can you come up with a better design for a backup sensor that does not rely on conventional wireless communication?
Build wheel carriage prototype. If it works well think of integrating it into the gbot design for spring term.

Latest revision as of 04:19, 16 January 2013

Question to the group: Where should we host the project? (Google Docs, Dropbox, GitHub, Google Code, SourceForge, etc.)

Below is a list of projects. Each project will have a team lead responsible for keeping everyone on track. We also ask that everyone is constantly documenting their work and that they develop a test suite along with their deliverables. The tests should include operation under “normal” operation, bad operating conditions (how do you gracefully recover?), and really bad operating conditions (how will the system persist without your module? What are the redundancies in the system?).

Power Module

Build the charging station consisting of two metal pads, electrically isolated, with a smart charger on the back side of the wall. The design challenge is in robustly delivering the power to the robot. A few ideas are:

  • the wall has telescoping power leads to reach the robot.
  • the robot has two spring-loaded contacts (springs, ball bearings?) to slide along the wall and make contact with the pads.
  • add mechanical magnetic clamps to the two pads to be able to support the weight of the gibbot.
  • inductive charging (replace batteries with supercapacitors?)

Robot Frame

We want to build a larger version of the Gibbot. The links should be between 12-18 inches long. Currently, everything is pretty cramped inside the robot and we will need more space if we want to lug around a higher capacity battery. We are considering using two 22.2 V, 1 lb Li-Po batteries that are 145 x 45 x 35 mm (5.71 x 1.77 x 1.38 in) that can supply up to 45 A continuous current. This project consists of three very important components:

  • motor selection and modeling
  • frame design, especially passing power, data, and control signals across the two links
  • powering the magnets which have to be attached to the wall while the robot rotates about its pivot point; assume we are using electromagnets.

While you can assume that the robot will have some netting or soft landing material underneath it in the event of a fall, the frame should still be strong. The robot should be expected to tow up to 10 lbs, including its own frame. The rest of the weight will come from the batteries, motor, and electronics. With this load, the motor should be selected so that the robot can still swing uphill. Is it possible to design a clutch mechanism? For the winter term, we would like to see a base frame constructed with a motor and magnets fully operational. We would also like to see the motor have its own PCB module. The module should have an H-bridge, encoder and current sensing circuitry, and perform simple PID tracking of trajectories.

Vision System

Build a vision system that can track the robot at all times. Assuming a steel sheet that is about 6 ft x 8 ft, the camera needs to be calibrated so that it outputs real-world coordinates. The major components of this project are:

  • calibration of a wide-angle lens, which can be fitted with a special color filter
  • robust wireless communication (IR, XBee, other)
  • robust tracking

The calibration of the camera will involve selecting a camera and calibrating it as well as purchasing a PC to read in and transmit the camera images. The wireless communication should be a reliable link between the camera and robot. The vision tracking software should contain a suite of algorithms to track the robot on the wall. What is the best design that includes as many redundancies as possible? While the camera is being selected the tracking and communicating can be done with a webcam as a stand-in.

Main PCB Design

This project involves improving upon the existing PCB, for example, better connectors between components, moving the H-bridge onto the actual PCB board, and integration of modules from other groups. There are various important control and data signals running across the PCB, but the signals are not easily accessible. The redesign should include breaking out certain signals (e.g., sensors) for easy debugging on an oscilloscope. We also need a good characterization of the on-board sensors. How long can we rely on the sensors for tracking the robot before there is too much error accumulation. The PCB currently has a current sensor, position sensor, gyro, accelerometers, and an XBee onboard. Are these parts easy to maintain and replace? Are there better variants out there? We also want to record data to an external Flash card for data logging and send info back to PC through wireless communication. When transmitting to the PC, the user should have a way of (securely) controlling the robot remotely and querying it for useful information.

Electropermanent magnets

Can we design and build a rotary magnet similar to what is in the current Gibbot, but with electropermanent (EP) magnets? It would have to consume under 16 W and have a holding force in the ballpark of 300 N for the magnet to be a worthwhile replacement to the electromagnet.

The (current) Gibbot

We would like to get the Gibbot doing gymnastics on the wall. What can we actually do with the current version of the robot and how can we use what we know about it to guide the next iteration of the robot for the MSI? This project will require building a model of the current robot and identifying the limitations of the current design.

Smart Wall

We need an alternative form of position sensing for the robot beyond a camera. An alternative that we believe would work is to wire LEDs (1- or 2-inches apart) on the steel sheet. The robot would then pick up a pulse-encoded signal from the LED telling the robot where it is. Constructing the smart wall isn't a problem, it's maintaining it. If we look at 2-inch spacing, then for a 48 sq. ft. wall we are looking at 1,728 LEDs. If one burns out, how will an MSI employee find the LED and replace it with ease? If this problem is intractable because of scaling, can you come up with a better design for a backup sensor that does not rely on conventional wireless communication?