Assignment: Mechanical Prototype for Autonomous Machine

Objective

Create an autonomous machine. This first phase focuses on mechanical design in the context of integrated electronics, software, and behavioral design.

Rationale

It's possible to breadboard an illustrative circuit in five minutes, but less possible for mechanical design examples, so the "quick exercise" model we used for circuits doesn't work as well. This assignment introduces mechanical design and fabrication by incorporating it into a technical assignment which will just be evaluated on technical merit. The purpose of the assignment is to learn and demonstrate technical skills. But even this assignment should allow some free choices, and ideally, it would inspire ideas for more human-centric projects.

Learning goals:

  1. use of idiomatic mechanical structures, including bushing and ball bearing joints, turntables, hinges, gears, timing belts, motor mounts, sensor mounting, slender members and I-beams
  2. basic use of CAD (of any form)
  3. laser cutter use on masonite and acrylic
  4. single-axis PD control
  5. simple behavior: optimization, memory, or history (needs clarification)

The minimum goal is to build upon the one-in-one-out theme by designing a single-axis controlled mechanism. Even a single actuated freedom can have complex behavior by using time effectively. In a conventional controls class, the feedback would normally be taken directly from the axis in order to control the velocity and position of the actuator. However, successful feedback control only requires that the property being sensed be a function of the system state. So for example, a motor could swing around a sonar sensor taking measurements of the local world geometry, and a controller could send currents to the motor which achieve some desired pointing goal such as aiming the sensor at the nearest object. In general, this is much harder than simply sensing a joint, but it paves the way for more interesting applications.

For an example of what can be possible with just a single motor (and possibly passive freedoms), search for "Acrobot" on line and you can find examples like this this acrobot demo or this one.

Procedure

  1. Choose a property to measure with a sensor
  2. Choose an appropriate mechanical structure with a single actuated axis which can move that sensor
  3. Sketch a complete design on paper for the mechanical structure and components.
  4. Design review. (Mon, Oct 20)
  5. Revise the mechanical design on paper.
  6. Sketch the basic electronic design on paper.
  7. Write two-sentence description of proposed behavior.
  8. Outline proposed control strategy on paper.
  9. Design review. (Wed, Oct 22)
  10. Draw in CAD any parts which require fabrication.
  11. Fabricate mechanism and electronics. (Mon, Oct 27)
  12. Implement control strategy in software. (Wed, Oct 29)

The performance of the device will be evaluated subjectively on the design and on how well it achieves the stated behavioral goal. If the performance can be quantified we can incorporate an objective measure.

Engineering Design Review Criteria for Autonomous Machine

Criteria for an engineering review:

  1. could someone else build it from your drawings?
  2. what tools and machines are required for fabrication?
  3. are all standard components identified?
  4. are all materials identified?
  5. is it kinematically well-defined?
  6. how is friction managed?
  7. are the structural components appropriate for expected loads?
  8. are the actuators sized appropriately?
  9. are the transmission ratios appropriate?
  10. what kind of embedded computation is required?
  11. are the interface circuits appropriate?
  12. what kind of power source is required?
  13. is there an estimate of overall cost?
  14. is there an estimate of overall fabrication time?

Criteria for a project review:

  1. What is your two-sentence description of proposed behavior?
  2. What are the fundamental inputs and outputs?
  3. Is it autonomous?  (See below for additional prompts.)
  4. Is the outcome congruous with the complexity?
  5. Are the physical and computational dynamics complementary?

Is it autonomous?

  1. what does it do with no humans present?
  2. what does it do in an unfamiliar test environment?
  3. does it exhibit logic and memory?
  4. does the physical performance indicate an internal state?
  5. does the action change over time?
  6. how does it handle physical contact?
  7. can a goal or purpose be inferred by observation?  over what time scale?