Skip to main content

Home/ Robotics/ Group items tagged is

Rss Feed Group items tagged

York Jong

MetaCricket: A designer's kit for making computational devices - 0 views

  • All Cricket devices have a built-in bidirectional infrared communications channel, which is used for Cricket-to-desktop communication (when downloading programs to a Cricket, or viewing sensor data) and Cricket-to-Cricket communication.
  • Cricket Logo is based on an iterative, interactive model of project development. It includes a “command center” window; instructions typed into this window are instantaneously compiled, downloaded to a Cricket, and executed, giving the system the flavor of an interpreted software environment such as LISP, BASIC, or FORTH.
  • The MetaCricket software system is based on a virtual machine, written in PIC assembly language and running on the Cricket, and a compiler for the virtual machine running on a desktop development computer
  • ...13 more annotations...
  • It is straightforward to implement an interpreter-like interface, where user commands are transparently compiled, downloaded, and executed.
  • The Cricket virtual machine is burned into the PIC microprocessor's internal ROM
  • The user's code resides in a serial EEPROM
  • Built-in infrared communications routines include a protocol for reading and writing to this external EEPROM, and for asking the virtual machine to begin execution of byte codes already loaded into the EEPROM.
  • Users write programs for the Cricket in Cricket Logo, a dialect of Logo specialized for the Cricket virtual machine. Essentially, there is a one-to-one mapping between statements in Cricket Logo and primitive functions built into the virtual machine. This makes the implementation of the compiler far simpler than typical compilers.
  • The infrared protocol includes the following capabilities: Check that a Cricket is present and ready for other commands. Write a byte to the Cricket's EEPROM. Read a byte from the Cricket's memory. Begin program execution from a particular memory address.
  • we have found that a debugger is not necessary because of the interactive and incremental style of project development that occurs when using the Cricket.
  • The compiler includes an interactive mode—a text window where user expressions are compiled, downloaded, and executed in one step when the user presses the return key. A portion of the Cricket's memory is set aside for these dynamic programs.
  • User-level primitive functions compile to one, two, or three bytes of object code for the Cricket virtual machine.
  • The Cricket virtual machine has two process threads: a foreground process and a background daemon. In most Cricket programs, the foreground thread handles all the work, but for some tasks, the background daemon is valuable. For example, the background daemon can be used to instigate a periodic activity, or take action when some event occurs.
  • There are hardware-specific primitives for interacting with on-board Cricket hardware. Motor commands set state (on or off), direction, and power levels for each of the two integrated motor drivers. Analog sensor primitives (sensora and sensorb) return a value (0 to 255) for each of the two voltage inputs. These inputs also may be interpreted as digital values using the switcha and switchb primitives. There is a pair of primitive functions for generating tones on the piezo beeper: beep and note, the latter taking pitch and duration arguments.
  • there is a background millisecond timer that is updated every four milliseconds
  • One foreground thread plus one background daemon Daemon fires when provided Boolean expression makes false-to-true transition
York Jong

SENSORS - SHARP IR RANGE FINDER - 0 views

  • The Sharp IR Range Finder works by the process of triangulation. A pulse of light (wavelength range of 850nm +/-70nm) is emitted and then reflected back (or not reflected at all). When the light returns it comes back at an angle that is dependent on the distance of the reflecting object. Triangulation works by detecting this reflected beam angle - by knowing the angle, distance can then be determined.
  • The IR range finder reciever has a special precision lens that transmits the reflected light onto an enclosed linear CCD array based on the triangulation angle.
  • The Sharp IR has a non-linear output. This means that as the distance increases linearly (by set increments), the analog output increases/decreases non-linearly.
  • ...10 more annotations...
  • To effectively use your Sharp IR Range Finder, you must have a voltage output versus distance chart to reference from.
  • One major issue with the Sharp IR Range Finder and that is going below the minimum sensor range. This is when an object is so close the sensor cannot get an accurate reading, and it tells your robot that a really close object is really far.
  • Another issue is the high narrowness of the IR beam. In reading sharp details and getting high accuracy, a thin beam is ideal. But the problem with a thin beam is that if it is not pointed exactly at the object, the object is therefore invisible.
  • A more advanced use for the Sharp IR Range Finder is to do mapping. To do this, you need at least one Range Finder, and at least one non-modified servo.
  • The sharp IR can be used as a quick and easy front non-contact robot bumper on your robot. Just place two IR devices in front of your robot and cross beams as shown. Ideally you would perfer to use rangers that have wider beams. Note: A single sonar can do this job just as well.
  • For example, a box in front of your robot might appear like this: 0 0 0 0 0 106 120 124 121 109 0 0 0 0 0
York Jong

Inside The Ugobe Pleo - Organic Robot Life - 0 views

  • CALEB CHUNG: Of course we could have used micro-servo motors to accomplish the motion of Pleo, but we aren’t able to use expensive motors. So we had to engineer it with a high-speed motor with high gearing and no backlash for control purposes and have it all fit within the muscle envelope of Pleo.
  • So what we did was go after a lot of ethology research. How do animals really handle the complexity of their environment? We built a virtual brain—a whole system that decides how Pleo will react in various situations.
  • CALEB CHUNG: Pleo will reset thresholds and adjust his idea of what he thinks is normal. Let’s say you get Pleo and you take him home to your shag carpet. When Pleo walks, the carpet will drag on his feet. So his force feedback sensors will realize that he is spending too much energy to walk around. Pleo will try different things to reduce the energy spent. Eventually, he will have the idea to step higher. Your Pleo compared to my Pleo will walk with a higher step.
  • ...8 more annotations...
  • Eventually, we got to the point where we don’t know what Pleo will do next because he learns. If Caleb and I went to your house to see your Pleo, we couldn’t predict a lot of the things he would do, even though we know everything we put in him. Pleo has the ability to change and figure things out on his own.
  • Consumers will be able to download and customize Pleo later this year or early next year. We want to give the user the ability to change Pleo’s personality, animations and tricks. We also want to allow developers and hobbyists to take the SDK and motion system and behavior system and choreograph advanced features and animations for new AI functionality.
  • We didn’t include a camera (or voice recognition) in Pleo because of the price point for the product. Pleo is probably a good hack for a CMU camera, and we want people to develop these sorts of things.
  • The only way you can create life is to give it choice. Life is very complex, and it has to evolve, otherwise it is a robot. The only way to get complex systems to work is to let them chose for themselves.
  •  
    Pleo is UGOBE's first designer Life Form and is based on the Camarasaurus dinosaur. He is made up of an amazing array of sensors, motors  (14!), and distributed computing with an ARM-7 processor commanding it all.
Filip Bártek

Recursive Bayesian estimation - Wikipedia, the free encyclopedia - 0 views

  • is constant relative to
  • is constant relative to
  • is constant relative to
  • ...13 more annotations...
  • Markov assumption
  • conditionally independent of the other earlier states
  • measurement at the k-th timestep is dependent only upon the current state
  • proportional
    • Filip Bártek
       
      It is proportional with the factor \alpha. \alpha = 1 / p(z_k|z_{1:k-1}) A way to compute the value of \alpha is shown below. It is common to all the updated states x_k at a given time k and measurement z_k.
  • predicted
  • marginalising out the previous states
  • predicted state
    • Filip Bártek
       
      p(x_k|z_{1:k-1})
  • update
  • predict and update steps
  • measurement likelihood
    • Filip Bártek
       
      p(z_k|x_k)
  • is constant relative to
  • can usually be ignored in practice
    • Filip Bártek
       
      We are typically interested in relative probabilities of the states. Equivalently [?], the p(x_k|z_{1:k}) across all the estimated states x_k is a probability distribution: \Sum_{x_k}{p(x_k|z_{1:k})} = 1
  • simply normalized, since its integral must be unity
York Jong

BEAM Circuits -- Solar engines - 0 views

  • The purpose of a solar engine is to act like a power "savings account" -- a small trickle of incoming energy is saved up until a useable amount is stored
  • A solar-powered robot can be made to work, even in relatively-low light levels
  • Solar cell size is minimized
  • ...2 more annotations...
  • by far the predominant
  • theoretically the most efficient
  •  
    At the heart of most solar-powered robots is a circuit called the solar engine (variously called Solar Engines, solarengines, SEs; a.k.a,relaxation oscillators). The purpose of a solar engine is to act like a power "savings account" -- a small trickle of incoming energy is saved up until a useable amount is stored. This stored energy is then released in a burst, in order to drive some useful (if only sporadic and incremental) work.
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

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

Ray's Solder-less Motor Mount Tutorial - 0 views

  • attach your Pager Motors to your Popper using two Fuse Clips, two Small Paper Clips, and no solder
  • ...7 more annotations...
  • Set one straightened paper clip aside, you will use it at the end. Bend the two tips of one of the two paper clips as shown.
  • Put it in through the fuse clip like this, but make sure the notch in the fuse clip is facing out. (The clip has one edge bent inwards. This is the part that has to face outwards). Study this next picture closely.
  • From the position above, bend the paper clip up and then around the lead of the fuse clip as in the next picture.
  • Bend the paper clip under the fuse clip...
  • then up and over the fuse clip:
  • then around its other lead and you're almost done with the first fuse clip.
  • First clip -- wire is on the RIGHT side of the fuse clip leads... Second Clip -- wire is on the LEFT side of the fuse clip leads... But remember to make sure the notch in the fuse clip is facing out. (The clip has one edge bent inwards. This is the part that has to face outwards).  Follow all the steps above with the second clip and you get this:
  •  
    I'll show you how to attach your Pager Motors to your Popper using two Fuse Clips, two Small Paper Clips, and no solder.
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
Filip Bártek

Monte Carlo localization - Wikipedia, the free encyclopedia - 0 views

  • particle filter localization
  • typically starts with a uniform random distribution of particles
  • hopefully most particles will converge to where the robot actually is.
  • ...19 more annotations...
  • environment is static and does not change with time
    • Filip Bártek
       
      We also need to capture the robot's velocity in the state (pose) in case the robot has some momentum, so the three parameters may be not enough for a 2D robot.
  • assumes the Markov property
  • position and orientation
  • particles are uniformly distributed over the configuration space
  • Given a map
  • every time
  • every time
  • motion_update
  • sensor_update
  • sensor_update
  • some noise is applied
  • It now believes it is at one of two locations.
  • The robot has successfully localized itself.
  • actuation command
  • no actuator is perfect: they may overshoot or undershoot the desired amount of motion
  • the motion model must be designed to include noise as necessary
  • Particles which were consistent with sensor readings are more likely to be chosen
  • possibly more than once
  • a robot becomes increasingly sure of its position as it senses its environment
York Jong

74*240-based photopopper circuits - 0 views

  • This adapted photodiode is not as sensitive as large area types so C2 may need to be reduced to 0.01uF while the value of R2 and R3 can be increased by a factor of 10.
  • Two leaded phototransistors can also be used but may require extra shielding to reduce light current in the bridge to acceptable levels
  • basic photopopper functions plus reverse -- all on a single chip
  • ...8 more annotations...
  • The monocore capacitor is for positive feedback for fast switching between the two motors and to slow down and avoid high frequency oscillations.
  • R2 together with C2 limits the maximum frequency of the monocore and motor drivers when the light is bright and the sensors are equally lit
  • R3 together with C2 sets the minimum frequency of the waggle even in the complete dark which is more interesting than twirling endlessly in a circle.
  • Having said that, maxibug is not perfect: it churns its wheels while feeding and does not back out of the feeding station when full. CD MaxiBug v5 uses just a few more parts but has powerful and efficient motor drivers, its motors are off while feeding, and it backs up when full.
  • The CD Maxibug v5 uses just one 74AC240 chip
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

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

Electronics Applications - 0 views

  • The current through a photodiode is directly proportional to the light intensity
  • The photodiode and phototransistor can be both photovoltaic (generators of potential difference) and photoconductive (modifiers of an electric current), depending on the application.
  • A reverse-biased photodiode operates in what is called photoconductive mode, since the conduction of the semiconductor junction varies with the illuminating light intensity.  If the reverse-biased voltage is relatively large (i.e. several volts) the reverse-biased photodiode will have a very fast response time (much faster than an LDR) and is suitable for detecting light signals that vary down to a time scale of a fraction of a microsecond.
  • ...8 more annotations...
  • When light shines on the LDR, it has low resistance and allows current to flow.  When light does not shine on it, the LDR has a very high resistance, and a much smaller current will not flow through it.
David Corking

BBC NEWS | Technology | Tweeting mouse trap and window | June 2009 - 0 views

  •  
    'The house that tweets' This 2 minute video interview with Andy Stanford-Clark is much more entertaining than the YouTube interview I bookmarked earlier. Lots of action shots of home telemetry, Andy's Java midlet on his phone, and what I think is a GNOME desktop showing his home's web interface.
Astro Biology

Know How Cassini Looking Mysterious Feature Evolve in Titan Sea - 0 views

  •  
    Do you know NASA's Cassini spacecraft is monitoring the evolution of a mysterious feature in a huge hydrocarbon sea on Saturn's moon Titan? Curious to read more about mysterious feature?
  •  
    Do you know NASA's Cassini spacecraft is monitoring the evolution of a mysterious feature in a huge hydrocarbon sea on Saturn's moon Titan? Curious to read more about mysterious feature?
Astro Biology

Earth's magnetic field has flipped - 0 views

  •  
    The new discovery indicates that the intensity of Earth's magnetic field is decreasing 10 times faster, leading some geophysicists to predict a reversal within a few thousand years.
  •  
    The new discovery indicates that the intensity of Earth's magnetic field is decreasing 10 times faster, leading some geophysicists to predict a reversal within a few thousand years.
Astro Biology

Know More about Robotic Mars Mission - 0 views

  •  
    Do you know Robotic missions to Mars have revealed clues about the planet's atmosphere and surface composition? NASA is investing to find and use natural resources beyond Earth. Want to know more about Robotic Mars Mission.
  •  
    Do you know Robotic missions to Mars have revealed clues about the planet's atmosphere and surface composition? NASA is investing to find and use natural resources beyond Earth. Want to know more about Robotic Mars Mission.
Astro Biology

Extreme Ultraviolet Image of a Significant Solar Flare - 0 views

  •  
    The sun emitted a significant solar flare which is classified as an X1.1-class flare. X-class denotes the most intense flares, while the number provides more information about its strength.
  •  
    The sun emitted a significant solar flare which is classified as an X1.1-class flare. X-class denotes the most intense flares, while the number provides more information about its strength.
1 - 20 of 87 Next › Last »
Showing 20 items per page