Skip to main content

Home/ Robotics/ Group items tagged control

Rss Feed Group items tagged

York Jong

http://www-robotics.usc.edu/~maja/robot-control.html - 0 views

  • stimulus-response
  • a plan of action
  • combine the best of both Reactive and Deliberative control
  • ...3 more annotations...
  • three-layer systems.
  • if a robot needs to plan ahead, it does so in a network of behaviors which talk to each other and send information around, rather than a single planner, as with hybrid systems.
  • Deliberative Control: Think hard, then act. Reactive Control: Don't think, (re)act. Hybrid Control: Think and act independently, in parallel. Behavior-Based Control: Think the way you act.
  •  
    Robot control refers to the way in which the sensing and action of a robot are coordinated. There are infinitely many possible robot programs, but they all fall along a well-defined spectrum of control. Along this spectrum, there are four basic practical
York Jong

[Blog] Motor-controlling PWMs - 43 views

作者: ykjiang (York) 看板: Robotics 標題: [Blog] Motor-controlling PWMs 時間: Mon Dec 18 17:21:33 2006 Motor-controlling PWMs http://yukuan.blogspot.com/2006/12/motor-controlling-pwms.html 一個脈寬調變(Pulse-...

embedded motor pwm

started by York Jong on 28 May 07 no follow-up yet
York Jong

RoboLogo - Teaching Children how to program Interactive Robots - 0 views

  • All of the procedures take a discrete ``gear'' to specify the speed. The reasons for this are two-fold; first, by limiting the power of the truck, we simplify the interface to children. Secondly, it allows use to calibrate the ``gears'' so that, for example, 10 seconds forward in first gear is the same distance as 10 seconds backward in first gear.
  • The limitation of LOGO however is the lack of feedback from the environment. There is no way of expressing an event occuring in the outside world.
  • Simple constructs in iLogo extend the original LOGO language with interactivity capabilities of reading sensors and transfering control to different parts of the program.
  • ...6 more annotations...
  • These above rules handle all of the commands and expressions of the iLogo language except for the DoUnlessCommand. This command will execute a list of commands unless a boolean condition is met. If so, control is switched to a new list of commands for handling the exception condition.
  • Each stage of the compiler is designed using the Visitor pattern described in the book Design Pattern by Eric Gamma, et al. This pattern allows tree traversers to be created as seperated objects, instead of doing all traversals as methods of the nodes of the tree
  • We decided to use the JavaCC/JJTree tools created by Sun for generating a custom parser for our iLogo language written in Java.
  • The language must have primitives which allow the user of the language to write programs which easily transfer control based upon outside stimuli, in this case sensors on the truck.
  • An LM18293 push-pull motor driver connects the programmable counter array (PCA) of the 8051 to the truck's motors.
    • York Jong
       
      LM18293 is a DC motor driver.
  • We took the Berkeley Logo language design as our base and then added a primitive for reading sensor and an exception-based control structure.
  •  
    RoboLogo is a system that enables children to program interactive robots. Children can program a robotic truck that interacts with the environment without having to deal with low-level implementation details.
York Jong

Programming Robot Controllers - 0 views

  •  
    Included with Programming Robot Controllers are all the software tools that you will require to develop your own robot applications. I choose the Microchip PIC16F627 microcontroller because it has flash memory (allowing it to be easily reprogrammed withou
York Jong

PROGRAMMING - PID CONTROL - 0 views

  • The only time you will need this term is when acceleration plays a big factor with your robot. If your robot is really heavy, or gravity is not on it's side (such as steep hills), then you will need the integral term.
  • The sampling rate is the speed at which your control algorithm can update itself.
  • To increase sampling rate, you want an even faster update of sensor readings, and minimal delay in your program loop.
York Jong

Behavior-Based Control: A Brief Primer - 0 views

  • Note that behaviors themselves can have state, and can form representations when networked together. Thus, unlike reactive systems, behavior-based systems are not limited in their expressive and learning capabilities.
  •  
    Behavior-based controllers consist of a collection of behaviors. Behaviors are processes or control laws that achieve and/or maintain goals.
York Jong

電池驅動的馬達 - 38 views

作者: ykjiang (York) 看板: Robotics 標題: 電池驅動的馬達 時間: Sun Dec 10 14:33:26 2006 既然聊到了以 PWM 控制馬達, 就順便簡單整理一下常用來驅動機器人的馬達: ※直流馬達(DC Motors) 就是靠直流驅動的馬達。 不同大小的電壓可以控制轉速;不同的通電方向,可以決定轉向。 通常直流馬達都是有刷的(brushed),會...

battery dc motor

started by York Jong on 28 May 07 no follow-up yet
York Jong

Robotics -- Logo Products - 0 views

  • Many Logo-based and other robotics products produced by LEGO are distributed to schools in the USA by Pitsco.
  • This free-range turtle does not require connection to a computer. All the controls are on board.
  • The Cricket is a tiny computer, suitable for all kinds of robotics projects, that you can program using Logo.
  •  
    Logo has long been used to control mechanical turtles and other robotic devices. Here are some sources of equipment and related software.
York Jong

PHOTORESISTOR ALGORITHMS - 0 views

  • pseudocode: read left_photoresistor read right_photoresistor if left_photoresistor detects more light than right_photoresistor then turn robot left if right_photoresistor detects more light than left_photoresistor then turn robot right if right_photoresistor detects about the same as left_photoresistor then robot goes straight loop
  • Photovore Algorithm, Improved This algorithm does the same as the original, but instead of case-based it works under a more advanced Fuzzy Logic control algorithm. Your robot will no longer just have the three modes of turn left, turn right, and go forward. Instead will have commands like 'turn left by 10 degrees' or 'turn right really fast', and with no additional lines of code! pseudocode: read left_photoresistor read right_photoresistor left_motor = (left_photoresistor - right_photoresistor) * arbitrary_constant right_motor = (right_photoresistor - left_photoresistor) * arbitrary_constant loop
  • ...1 more annotation...
  • Photovore, Split Brain Approach This algorithm works without comparison of photoresistor values. Instead, just command the right motor based on light from the right sensor, and the left motor with only data from the left sensor. You can also get interesting variations by reversing the sensors for a cross-brain algorithm. pseudocode: read left_photoresistor read right_photoresistor move left_wheel_speed = left_photoresistor * arbitrary_constant move right_wheel_speed = right_photoresistor * arbitrary_constant loop
  •  
    The photovore is a robot that chases light, and is perhaps the simplest of all sensor algorithms. If you are a beginner, this should be your first algorithm.
York Jong

Reduce Motor Noise - 0 views

  • This is the 3 capacitor method.  I used this one in all my RC cars and many of the RC toys that I have taken apart use this method.
  • One of the easiest and most overlooked technique that can be done to lower motor noise is the twist your motor and motor power wires.  This in affect forces the magnetic fields to cancel each other out.
  • By placing a metal shield between your motors and radio can do wonders.  Also keep in mind that some metals shield better than others.   Carbon Steel shields several hundred times better than aluminum.  Dont use this shielding as a conductor or you may compound the problem.
  • ...1 more annotation...
  • Place your high current wires away from sensitive areas and antennas.  Don't run the wire parallel with wires that are used as signaling in your micro controller.  If you must its best to have them cross at 90 degrees.
  •  
    In the past when I built a Bot I would just slap it together and hope for the best. However when I started to use RC receivers to aid in the control of my bots the results left a lot to be desired.
York Jong

BEAM Pieces -- Integrated circuits - 0 views

  • 1381s are CMOS voltage-controlled triggers -- these "gate" a source until the voltage is above some "trip" limit, at which point it is allowed onto a third pin
  • We use them as 3- or 5-volt triggers
  • This chip is often considered the heart of Nv net technology
  • ...22 more annotations...
  • The '240 is often called "the bicore chip," because we can take advantage of the 240's inverters to turn a single 74*240 into a bicore
  • The '240 also has tri-state outputs, so an enable line can be used to turn its outputs on and off simply (good for adding reversing capability to a 'bot).
  • any *cores built with a 74*04 will require additional logic "downstream" to amplify the current to levels sufficient to drive a moto
  • Schmitt triggers can't easily be used in suspended bicore implementations
  • use its buffers as little current amplifiers
  • it is usable for either grounded or suspended bicore designs (but better for suspended)
  • 74HC/HCTxx non-buffers (74HC14 or 74HC04) draw about half of the current consumption, and have about half the drive current compared to HC / HCT buffer chips (74HC240 or 74HC245). Non-buffer chips are thus better for oscillators, say Nv and Nu applications; they are not suited for use in driving motors.
  • 74AC is best suited for motor driver applications with all inputs driven rail to rail.
  • The '245 is an octal buffer chip, and so has 8 channels of buffering power available for our misuse. This chip was designed for data transmission uses, but we'll misuse it as a motor driver chip
  • The '244 provides us with 8 (thus the "octal") buffers, enableable in banks of 4. This is a very useful chip for amplifying small currents
  • it can drive up to 4 motors in 2 directions each, or you can "buddy up" inputs and outputs to drive fewer motors at higher current
  • it can drive up to 4 motors in 2 directions each, or you can "buddy up" inputs and outputs to drive fewer motors at higher current
  • If you can't find 1381s locally, you might have better luck finding its European cousin, the TC-54 -- for details on it
  • Note that if you need more than about 200 mA per motor, you'll need to use an H-bridge, or some similar motor driver
  • The ideal BEAM circuit would use a low (2V-3V) voltage core and sensors combined with level shifting high (5-6V) volt motor drivers to maximize efficiency.
  • 74ACxxx used in typical BEAM applications uses 4x more supply current than does 74HC/HCTxxx.
  •  
    The following material is intended to cover usage and part selection details of ICs you're most likely to see in BEAM robots.
York Jong

A Bot With Peripheral Vision - 0 views

  • I wanted to share an adaptation of the Schead v4, that I have been experimenting with. It is (for lack of a better term) a Master/Slave Schmitt Comparitor Head (M/S SC-H). With the addition of a 74 AC 240 or two (as motor drivers) and a pair of motors, you can put together an interesting little light seeking, wheeled robot with peripheral vision.
  • As long as the light reaching the photo-bridge of the Master SC-H is balanced, then the Slave SC-H acts as a regular, lone SC-H would. So, if one of the slave photo-diodes detects more light then the other, the inverter that controls the motor on that side changes states and is now the same as the inverter of the Master SC-H tied to the same motor. This turns that motor off and the robot will pivot around the stopped wheel toward the greater light source until the light on each sensors is balanced and the motor again begins to turn.
  • I am also using SCar to continue experimenting with Stacking separate Sensor/Behavior circuits onto a robot. I will post more as progress is made.
  • ...9 more annotations...
  • The diodes between the  photo-diodes create a constant voltage drop between the inputs of the inverters. They cause  a dead band to exist between the thresholds of the two inverters. In a way they cause the circuit to act like a kind of window  comparator. Without these diodes both inverters would always be in the same state. With them, there is a small range where their outputs are in opposite states.
  • The Slave section has only two diodes (or one LED) between the photo-diodes. This makes it respond to smaller differences in light levels than does the Master part of the circuit
  • Basically, what I did was to stack one SC-H on top of another
  • I?m using a 74 HC 139 to direct the outputs of the M/S SC-H circuit to the appropriate motor(s)
  • Cheesy works very well. I?ve had fun making him chase a spot of light from a flashlight around on the floor. He has even been able to detect and react to the flashlight spot on the floor of the brightly lighted lab where I work.
    • York Jong
       
      Stacking separate Sensor/Behavior
York Jong

74*14-based photopopper circuits - 0 views

  • Droidmakr (Cliff Boerema) came up with an interesting idea for a light-tracking head with a form of peripheral vision. As often happens, the circuit turned into something different -- a photopopper:
  • All done with a single 74HC14 (the '240 being a motor driver).
  • I tried the same setup with the 74*240 (with an extra inverter per motor) and 7404, but the 74HC14 seems to work best.
  • ...6 more annotations...
  • John-Isaac Mumford started off by simplifying the Maxibug design, and wound up with an entirely new circuit -- Mazibug
  • The tactiles switches behave even more strongly: if a switch is closed then the bot turns away unconditionally. If both switches are closed the robots reverse straight back regardless of light level.
  • When the robot bumps into something on one side, it over-rides all the photodiode circuits and reverses the motor on the OPPOSITE side
  • From the title it would appear that all 4 photodiodes face forward but the 2 inner PDs face directly forward and the outer 2 are angled to the left and right
    • York Jong
       
      behavior-based control that all done with a sigle 74HC14
York Jong

MC34164-* - BEAM Wiki - 0 views

  • 34164s are undervoltage sensing circuits ("voltage supervisors") designed for use as reset controllers in portable microprocessor based systems. We use them as 3- or 5-volt triggers (here, 3 or 5 fills in the "*" of the part number above), as the heart of the Chloroplast solar engine design.
York Jong

1381* - BEAM Wiki - 0 views

  • 1381s are CMOS voltage-controlled triggers -- these "gate" a source until the voltage is above some "trip" limit, at which point it is allowed onto a third pin.
  • If you can't find 1381s locally, you might have better luck finding its European cousin, the TC-54 -- for details on it, see its data sheet.
York Jong

MECHANICS - ROBOT CHASSIS CONSTRUCTION - 0 views

  • Large diameter wheels give your robot low torque but high velocity. So if you already have a very strong motor, then you can use wheels with larger diameters.
  • But if your motor is weak (such as if it does not have any gearing), you want to use a much smaller diameter wheel. This will make your robot slower, but at least it has enough torque to go up a hill!
  • Wheel width. You do not want it too wide as it causes increased resistance to rotating the wheel on a surface.
  • ...1 more annotation...
  • Make sure you get a motor which already has a gear box attached, as it makes your robot much better controlled, more efficient, and stronger.
  •  
    This robot tutorial should help you with the mechanical aspect of building your very first robot. You should have already read my build your first robot tutorial before moving on to this tutorial.
York Jong

ACTUATORS - SERVOS - 0 views

  •  
    Servos are DC motors with built in gearing and feedback control loop circuitry. And no motor drivers required!
York Jong

Robot Room - Removing Weight From Tiny Vibrating Motor - 0 views

  •  
    Before discarding a damaged or obsolete cell phone, pager, or force-feedback joystick (aka game controller), crack it open and recover the vibrating element! The vibrating part usually consists of a miniature motor with an offset-weighted shaft.
York Jong

Robot Room - IRB and Roundabout Resourcess - 0 views

  • "Exposing a Flaw: Shoot-Through" describes the serious problem with that circuit, especially when pulsed
  • Above is an improved version of the circuit, which is now PWM compatible. PWM, coast mode, and the capability to avoid shoot-through are provided by adding a fifth MOSFET (labeled Q5) to the source/ground connections of Q1 and Q3.
  • ...1 more annotation...
  • By default at power-up, the circuit is in coast mode. To brake, set IN A to 0 V, IN B to 0 V, and Q5 to 5 V. To spin clockwise, set IN A to 5 V, IN B to 0 V, and Q5 to 5 V. To spin counterclockwise, set IN A to 0 V, IN B to 5 V, and Q5 to 5 V. At any time you can return to coast by applying 0 V to Q5. Or, you can apply pulses of 0 V/5 V/0 V/5 V (and so on) to control the speed. The more time spent at 5 V, the faster the motor will spin. Whenever you change modes, if you set Q5 to 0 V before making changes to IN A and IN B (and then set Q5 back to 5 V or pulsing) there will be no shoot-through.
  •  
    This secret page is for owners of the book, Intermediate Robot Building. On this page, you'll find updates, corrections, and source files. Thank you for buying the book!
York Jong

Pleo - Wikipedia, the free encyclopedia - 0 views

  • camera-based vision system (for light detection and navigation) two microphones, binaural hearing beat detection (allows pleo to dance and listen to music) - this feature was removed but may be added on again. eight touch sensors (head, chin, shoulders, back, feet) four foot switches (surface detection) fourteen force-feedback sensors, one per joint orientation tilt sensor for body position infrared mouth sensor for object detection into mouth infrared transmit and receive for communication with other Pleos Mini-USB port for online downloads SD card slot for Pleo add-ons infrared detection for external objects 32-bit Atmel ARM 7 microprocessor (main processor for Pleo) 32-bit NXP ARM 7 sub processor (camera system, audio input dedicated processor) four 8-bit processors (low-level motor control)
  •  
    Pleo is a robotic dinosaur, made for all ages, designed to emulate the appearance and behavior of a week-old baby Camarasaurus. It was designed by Caleb Chung, the co-creator of the Furby, and manufactured by Ugobe.
1 - 20 of 29 Next ›
Showing 20 items per page