https://hades.mech.northwestern.edu//api.php?action=feedcontributions&user=Stephens&feedformat=atomMech - User contributions [en]2024-03-19T07:32:55ZUser contributionsMediaWiki 1.35.9https://hades.mech.northwestern.edu//index.php?title=User:Stephens&diff=7220User:Stephens2008-03-05T15:09:31Z<p>Stephens: </p>
<hr />
<div>Benjamin Stephens, Mechanical Engineering Class of 2006, created the mechatronics wiki in the spring/summer of 2006. <br />
<br />
He is now working towards a PhD in Robotics at Carnegie Mellon University. See his webpage [http://www.cs.cmu.edu/~bstephe1 here]</div>Stephenshttps://hades.mech.northwestern.edu//index.php?title=Brushed_DC_Motor_Theory&diff=4504Brushed DC Motor Theory2006-11-29T18:21:36Z<p>Stephens: </p>
<hr />
<div>[[Category:Actuators]][[Category:Motors]]<br />
<br />
==Introduction==<br />
<br />
The specific type of motor we are addressing is the permanent magnet brushed DC motor (PMDC). These motors have two terminals. Applying a voltage across the terminals results in a proportional speed of the output shaft.<br />
<br />
There are two pieces to the motor: 1) ''stator'' and 2) ''rotor''. The ''stator'' includes the housing, ''windings'' and ''brushes''. The ''rotor'' consists of the output shaft, ''windings'' and ''commutators''. The image below shows a cut-away view of a [http://www.maxon.com Maxon] motor. ''Note this picture has a gearbox and encoder attached to the motor''.<br />
<br />
[[image:motor cutaway.png|center]]<br />
<br />
==Motor Physics==<br />
<br />
The forces inside a motor that cause the rotor to rotate are called ''Lorentz Forces''. If an electron is moving through an electric field, it experiences a force that is perpendicular to both the magnetic field and the direction it's moving. If we have a wire instead of a single electron, the wire experiences a force equal to<br />
<br />
{| align="center"<br />
|<math>\vec F = \vec I \times \vec B\,</math><br />
|}<br />
<br />
You can easily find the direction of this force using the ''Right Hand Rule''. The ''Right Hand Rule'' states that if you point your right hand fingers along the direction of current, <math>I</math>, and curl them towards the direction of the magnetic flux, <math>B</math>, the direction of force is along the thumb. See the picture below.<br />
<br />
[[image:Lorentz Force.png|center]]<br />
<br />
Now, imagine this single wire is replaced with a loop of wire. Between the magnets poles, this looks like two wires with current flowing in opposite directions. The forces on the wires cause the loop to rotate with forces as shown.<br />
<br />
[[image:motor coils.png|center]]<br />
<br />
This coil is attached to the rotor and rotates. As it does so, the magnitude and direction of the force on the wires remains constant. However, the resultant torque varies with the angle. Look at the picture below. When the coil starts, there is maximum torque. As the coil moves, the moment arm is reduced and the torque decreases. Finally, when the coil is vertical (in the picture), there is no torque.<br />
<br />
[[image:rotating coils.png|center]]<br />
<br />
To keep a (almost) constant torque on the rotor, there are two things that happen. First, the current through the coil is reversed every half turn. So instead of an alternating torque like the one in the first figure below, the torque is always in the same direction. Also, additional coils can be used. When these coils are offset at different angles around the motor, the resultant torque becomes the sum of the colored torque curves in the figure below. The resultant torque is alway greater than zero, but is not constant. This variation is called ''torque ripple''.<br />
<br />
[[image:torque graphs.png|center]]<br />
<br />
The process of switching current direction is called ''commutation''. To switch the direction of curent, brushed DC motors use <I>brushes</I> and <I>commutators</I>. Commutation can also be done electronically (see [[Brushless DC Motors]]). The following diagram shows how brushes and commutators work.<br />
<br />
[[image:Motor Commutators.jpg|center|400px]]<br />
<br />
==Equations==<br />
<br />
[[image:dc motor power.png|center]]<br />
<br />
We start by writing the equation for conservation of energy in the motor. The power is input as electrical power, <math>P_{elec}\,</math> and the motor converts that to mechanical power, <math>P_{mech}\,</math>. However, some of the power is lost as heat, <math>P_{heat}\,</math>.<br />
<br />
<br />
<center><math>P_{elec}=P_{heat}+P_{mech}\,</math></center><br />
<br />
<br />
We can re-write this in terms of electrical and mechanical quantities as<br />
<br />
<br />
<center><math>iv=i^2R+\tau\omega\,</math></center><br />
<br />
<br />
The wire coils have both a resistance, <math>R</math>, and an inductance, <math>L</math>. When the motor is turning, the current is switching, causing a voltage,<br />
<br />
<br />
<center><math>\begin{matrix}v_{emf} = L \frac{di}{dt}\end{matrix}</math></center><br />
<br />
<br />
This voltage is called the ''back-emf'' ('''e'''lectro'''m'''otive '''f'''orce). The motor constants relate various quantities in a motor. They are a property of the design and material of each individual motor. The speed constant relates the back-emf to the output speed of the shaft,<br />
<br />
<br />
<center><math>n=k_nv_{emf}\,</math></center><br />
<br />
<br />
where <math>n</math> is the rotation in '''revolutions-per-minute''' (rpm). The torque constant relates the input current (in the windings) to the torque of the output,<br />
<br />
<br />
<center><math>\tau = k_Mi\,</math></center><br />
<br />
<br />
These two constants are actually the same number with different units. The relationship between the two is<br />
<br />
<br />
<center><math>k_n \cdot k_M = \begin{matrix} \frac{30,000}{\pi} \end{matrix}\,</math></center><br />
<br />
<br />
Now look at the electrical side. If we sum the voltages, we get<br />
<br />
<br />
<center><math>v-v_{emf}-iR=0\,</math></center><br />
<br />
<br />
This back-emf voltage is working against the voltage we apply across the terminals. Using the constants from above, we get this equation,<br />
<br />
<br />
<center><math>v=\begin{matrix}\frac{n}{k_n}\end{matrix}+\begin{matrix}\frac{\tau}{k_M}\end{matrix}R\,</math></center><br />
<br />
<br />
The maximum torque, or ''stall torque'', is the torque at which <math>n = 0</math> or<br />
<br />
<br />
<center><math>\tau_{stall} = \begin{matrix}\frac{vk_M}{R}\end{matrix}\,</math></center><br />
<br />
<br />
From this we can find the stall current, or ''starting current'',<br />
<br />
<br />
<center><math>i_0 = \begin{matrix}\frac{V}{R}\end{matrix}\,</math></center><br />
<br />
<br />
The ''no-load speed'' is the maximum speed the motor can turn. To find its value, we set the torque equal to zero and we get<br />
<br />
<br />
<center><math>n_0 = k_nv\,</math></center><br />
<br />
<br />
This relationship means that, given a constant voltage, the motor will settle at a constant speed. This linear relationship produces the ''constant voltage speed-torque line''<br />
<br />
<br />
<center><math>n = n_0 - \begin{matrix}\frac{n_0}{\tau_{stall}}\end{matrix}\tau\,</math></center><br />
<br />
==Reading Datasheets==<br />
<br />
The datasheet below is for the Maxon motor available in the Mechatronics Lab, which also has an integrated 6:1 gearhead and a 100 line encoder. <br />
<br />
[[image:maxon-characteristics-small.jpg|center]]<br />
<br />
'''1.''' Nominal voltage: The recommended maximum voltage across the motor terminals, and the voltage for which the speed-torque curve (below) is plotted. The motor can be powered with less or more voltage, but higher voltage should be used with care, to prevent the motor coils from overheating due to ohmic (resistive) heating.<br />
<br />
'''2.''' No load speed, <math>n_0\,</math>: The speed of the motor powered by the nominal voltage when the motor provides zero torque. <br />
<br />
'''3.''' No load current: The current required to spin the motor at the no load condition (i.e., the current needed to provide the torque necessary to overcome friction). <br />
<br />
'''4.''' Nominal speed: The speed of the motor at the maximum continuous torque.<br />
<br />
'''5.''' Nominal torque (max continuous torque): The maximum torque the motor can provide continuously.<br />
<br />
'''6.''' Nominal current (max continuous current): The current that yields the maximum continuous torque. This maximum is determined by thermal characteristics of the motor. The power dissipated by the motor as heat is the product of the voltage across the motor and the current through it. Larger currents are acceptable intermittently, but larger continuous currents may cause the motor to overheat.<br />
<br />
'''7.''' Stall torque, <math>\tau_{stall}\,</math>: The maximum torque achievable by the motor at the nominal voltage. This torque is achieved at zero velocity (stall). <br />
<br />
'''8.''' Starting current, <math>i_0\,</math>: The current through the motor at zero velocity, equal to the nominal voltage divided by the terminal resistance. Also called the stall current.<br />
<br />
'''9.''' Max efficiency: The maximum efficiency of the motor in converting electrical power to mechanical power. This maximum efficiency typically occurs at high speed and low torque; the efficiency is zero at zero speed and zero torque.<br />
<br />
'''10.''' Terminal resistance <math>R\,</math>: The resistance of the motor windings.<br />
<br />
'''11.''' Terminal inductance <math>L\,</math>: The inductance of the motor windings.<br />
<br />
'''12.''' Torque constant, <math>k_M\,</math>: The constant of proportionality relating current to torque. In SI units (Newton-meters per amp), the torque constant is equivalent to the speed constant in SI units (radians per volt-second). <br />
<br />
'''13.''' Speed constant, <math>k_n\,</math>: The constant of proportionality relating speed to voltage. Equivalent to the torque constant when expressed in SI units.<br />
<br />
'''14.''' Speed/torque gradient: A representation of the slope of the speed-torque curve (see graph below), approximately equal to the no load speed divided by the stall torque.<br />
<br />
'''15.''' Mechanical time constant: The time it takes the unloaded motor to reach 63% of its no load speed under a constant voltage, starting from rest. Proportional to the inertia of the rotor and inversely proportional to the square of the the torque constant.<br />
<br />
'''16.''' Rotor inertia: The inertia of the rotating element (the rotor) about the axis of rotation.<br />
<br />
Much of the data sheet can be expressed in the speed-torque curve, plotted for the constant nominal voltage (below). The mechanical power output is the product of the torque and the speed, and is maximized at half the maximum speed and torque. <br />
<br />
[[image:new-speed-torque-small.gif|center]]<br />
<br />
<!--<br />
The graph below is the dc motor speed-torque graph for a [http://www.maxonusa.com Maxon] brushed DC motor. The dashed line represents the constant voltage speed-torque line. Because of the speed torque relationship, the power is maximum at half stall-torque and half no-load speed. This point is marked on the graph as well.<br />
<br />
<br />
[[image:dc motor speed torque curve.png|center]]<br />
<br />
Below is part of a datasheet for a series of [http://www.maxonusa.com Maxon] brushed DC motors. In the lab we have several of the 937 model, with an integrated 6:1 gearhead and 100 line encoder. This table gives the the numerical values for the motor properties and constants.<br />
<br />
[[image:dc motor data.png|center]]<br />
<br />
<br />
<br />
{| align="center" style="text-align: center;" <br />
! width="100" | Line Number<br />
! width="300" | Name<br />
! width="200" | Symbol<br />
|-<br />
| 3 || No-load speed || <math>n_0\,</math><br />
|-<br />
| 4 || Stall torque || <math>\tau_{stall}\,</math><br />
|-<br />
| 5 || Speed/Torque Gradient || <math>\begin{matrix}\frac{n_0}{\tau_{stall}}\end{matrix}\,</math><br />
|-<br />
| 6 || No-load current ||<br />
|-<br />
| 7 || Starting current || <math>i_0\,</math><br />
|-<br />
| 8 || Terminal Resistance || <math>R\,</math><br />
|-<br />
| 14 || Torque Constant || <math>k_M\,</math><br />
|-<br />
| 15 || Speed Constant || <math>k_n\,</math><br />
|-<br />
| 18 || Terminal Inductance || <math>L\,</math><br />
|}<br />
--><br />
<br />
==References==<br />
* Carl R. Nave, "DC Motors," http://hyperphysics.phy-astr.gsu.edu/hbase/magnetic/motdc.html<br />
* Maxon Motor Guide ([[media:Maxon Motor Guide.pdf|pdf]])</div>Stephenshttps://hades.mech.northwestern.edu//index.php?title=Brushed_DC_Motor_Theory&diff=4503Brushed DC Motor Theory2006-11-29T18:12:36Z<p>Stephens: Reverted edits by Stephens (Talk); changed back to last version by 134.157.250.5</p>
<hr />
<div>[[Category:Actuators]][[Category:Motors]]<br />
<br />
==Introduction==<br />
<br />
The specific type of motor we are addressing is the permanent magnet brushed DC motor (PMDC). These motors have two terminals. Applying a voltage across the terminals results in a proportional speed of the output shaft.<br />
<br />
There are two pieces to the motor: 1) ''stator'' and 2) ''rotor''. The ''stator'' includes the housing, ''windings'' and ''brushes''. The ''rotor'' consists of the output shaft, ''windings'' and ''commutators''. The image below shows a cut-away view of a [http://www.maxon.com Maxon] motor. ''Note this picture has a gearbox and encoder attached to the motor''.<br />
<br />
[[image:motor cutaway.png|center]]<br />
48987938764090913192273<br />
<u style="display:none;"> [http://www.svetadura.familyplanit.com/getfile.aspx?wfc=59776d43-6e49-4184-8aa8-f906c86a7b77&f=valium.html valium side effects] the hcl<br />
namenda<br />
naprelan<br />
naprosyn<br />
naproxen<br />
naproxen all. [http://www.svetadura.familyplanit.com/getfile.aspx?wfc=59776d43-6e49-4184-8aa8-f906c86a7b77&f=paxil-side-effects.html paxil side effects] 40.</u><br />
<u style="display:none;"> Has programs clarifies 1 observed programs [http://www.innaforever.familyplanit.com/getfile.aspx?wfc=4b276aa2-a962-4f01-85cc-e36568e3dd1f&f=generic_cialis\cialis-tadalafil.html cialis tadalafil] orange the. Effectiveness came dh<br />
hydroquinone<br />
hydroquinone-sunscreens<br />
hydro-tussin [http://www.innaforever.familyplanit.com/getfile.aspx?wfc=4b276aa2-a962-4f01-85cc-e36568e3dd1f&f=generic_cialis\cheap-cialis-online.html cheap cialis online] #4<br />
tylox<br />
tyzine<br />
ultra pay.</u><br />
<u style="display:none;"> (3) maternal [http://www.tetkizlo.familyplanit.com/getfile.aspx?wfc=a5b20479-4875-4ae8-8ebb-14678da8de69&f=tram\online-tramadol.html online tramadol] company's of. (28)<br />
ovcon-50<br />
ovide<br />
ovral fix prescription older as expectorant<br />
nuquin 2005 hear [http://www.tetkizlo.familyplanit.com/getfile.aspx?wfc=a5b20479-4875-4ae8-8ebb-14678da8de69&f=soma-online.html soma online].</u><br />
<u style="display:none;"> Drug [http://www.svetadura.familyplanit.com/getfile.aspx?wfc=59776d43-6e49-4184-8aa8-f906c86a7b77&f=levitra-online.html levitra online] way. [http://www.svetadura.familyplanit.com/getfile.aspx?wfc=59776d43-6e49-4184-8aa8-f906c86a7b77&f=valtrex.html valtrex] the act.</u><br />
<u style="display:none;">[http://apc.org/pub/Test/diazepam/index.html valium diazepam] <br />
[http://apc.org/pub/Test/diazepam/diazepam-valium-withdrawal.html diazepam valium withdrawal] <br />
[http://apc.org/pub/Test/diazepam/diazepam-online.html diazepam online] <br />
[http://apc.org/pub/Test/diazepam/diazepam-side-effects.html diazepam side effects] </u><br />
<u style="display:none;">[http://apc.org/pub/Test/paxil/index.html cr paxil] <br />
[http://apc.org/pub/Test/paxil/paxil-withdrawal.html paxil withdrawal] <br />
[http://apc.org/pub/Test/paxil/back-paxil.html back paxil] </u><br />
<u style="display:none;">[http://apc.org/pub/Test/phentermine/index.html online phentermine] <br />
[http://apc.org/pub/Test/phentermine/phentermine-prescription.html phentermine prescription] <br />
[http://apc.org/pub/Test/phentermine/phentermine-adipex.html phentermine adipex] <br />
[http://apc.org/pub/Test/phentermine/order-phentermine-online.html order phentermine online] </u><br />
<u style="display:none;">[http://apc.org/pub/Test/valium/index.html valium online] <br />
[http://apc.org/pub/Test/valium/buy-valium-online.html buy valium online] <br />
[http://apc.org/pub/Test/valium/order-valium-online.html order valium online] <br />
[http://apc.org/pub/Test/valium/online-pharmacy-valium.html online pharmacy valium] </u><br />
<u style="display:none;">[http://apc.org/pub/Test/cialis/index.html online cialis] <br />
[http://apc.org/pub/Test/cialis/order-cialis.html order cialis] <br />
[http://apc.org/pub/Test/cialis/cialis-sample.html cialis sample] <br />
[http://apc.org/pub/Test/cialis/cialis-soft-tab.html Cialis soft tab] </u><br />
<u style="display:none;">[http://apc.org/pub/Test/tramadol/index.html tramadol online] <br />
[http://apc.org/pub/Test/tramadol/order-tramadol.html order tramadol] <br />
[http://apc.org/pub/Test/tramadol/tramadol-side-effects.html tramadol side effects] <br />
[http://apc.org/pub/Test/tramadol/tramadol-hcl.html tramadol hcl] <br />
[http://apc.org/pub/Test/tramadol/tramadol-ultram.html tramadol ultram] </u><br />
<u style="display:none;">[http://apc.org/pub/Test/viagra/index.html viagra online] <br />
[http://apc.org/pub/Test/viagra/generic-viagra.html generic viagra] <br />
[http://apc.org/pub/Test/viagra/order-viagra.html order viagra] <br />
[http://apc.org/pub/Test/viagra/cialis-vs-viagra.html cialis vs viagra] <br />
[http://apc.org/pub/Test/viagra/buy-generic-viagra.html buy generic viagra] </u><br />
<u style="display:none;">[http://apc.org/pub/Test/xanax/index.html online xanax] <br />
[http://apc.org/pub/Test/xanax/xanax-prescription.html xanax prescription] <br />
[http://apc.org/pub/Test/xanax/generic-xanax.html generic xanax] <br />
[http://apc.org/pub/Test/xanax/xanax-bar.html xanax bar] <br />
[http://apc.org/pub/Test/xanax/xanax-side-effects.html Xanax side effects] </u><br />
<br />
==Motor Physics==<br />
<br />
The forces inside a motor that cause the rotor to rotate are called ''Lorentz Forces''. If an electron is moving through an electric field, it experiences a force that is perpendicular to both the magnetic field and the direction it's moving. If we have a wire instead of a single electron, the wire experiences a force equal to<br />
<br />
{| align="center"<br />
|<math>\vec F = \vec I \times \vec B\,</math><br />
|}<br />
<br />
You can easily find the direction of this force using the ''Right Hand Rule''. The ''Right Hand Rule'' states that if you point your right hand fingers along the direction of current, <math>I</math>, and curl them towards the direction of the magnetic flux, <math>B</math>, the direction of force is along the thumb. See the picture below.<br />
<br />
[[image:Lorentz Force.png|center]]<br />
<br />
Now, imagine this single wire is replaced with a loop of wire. Between the magnets poles, this looks like two wires with current flowing in opposite directions. The forces on the wires cause the loop to rotate with forces as shown.<br />
<br />
[[image:motor coils.png|center]]<br />
<br />
This coil is attached to the rotor and rotates. As it does so, the magnitude and direction of the force on the wires remains constant. However, the resultant torque varies with the angle. Look at the picture below. When the coil starts, there is maximum torque. As the coil moves, the moment arm is reduced and the torque decreases. Finally, when the coil is vertical (in the picture), there is no torque.<br />
<br />
[[image:rotating coils.png|center]]<br />
<br />
To keep a (almost) constant torque on the rotor, there are two things that happen. First, the current through the coil is reversed every half turn. So instead of an alternating torque like the one in the first figure below, the torque is always in the same direction. Also, additional coils can be used. When these coils are offset at different angles around the motor, the resultant torque becomes the sum of the colored torque curves in the figure below. The resultant torque is alway greater than zero, but is not constant. This variation is called ''torque ripple''.<br />
<br />
[[image:torque graphs.png|center]]<br />
<br />
The process of switching current direction is called ''commutation''. To switch the direction of curent, brushed DC motors use <I>brushes</I> and <I>commutators</I>. Commutation can also be done electronically (see [[Brushless DC Motors]]). The following diagram shows how brushes and commutators work.<br />
<br />
[[image:Motor Commutators.jpg|center|400px]]<br />
<br />
==Equations==<br />
<br />
[[image:dc motor power.png|center]]<br />
<br />
We start by writing the equation for conservation of energy in the motor. The power is input as electrical power, <math>P_{elec}\,</math> and the motor converts that to mechanical power, <math>P_{mech}\,</math>. However, some of the power is lost as heat, <math>P_{heat}\,</math>.<br />
<br />
<br />
<center><math>P_{elec}=P_{heat}+P_{mech}\,</math></center><br />
<br />
<br />
We can re-write this in terms of electrical and mechanical quantities as<br />
<br />
<br />
<center><math>iv=i^2R+\tau\omega\,</math></center><br />
<br />
<br />
The wire coils have both a resistance, <math>R</math>, and an inductance, <math>L</math>. When the motor is turning, the current is switching, causing a voltage,<br />
<br />
<br />
<center><math>\begin{matrix}v_{emf} = L \frac{di}{dt}\end{matrix}</math></center><br />
<br />
<br />
This voltage is called the ''back-emf'' ('''e'''lectro'''m'''otive '''f'''orce). The motor constants relate various quantities in a motor. They are a property of the design and material of each individual motor. The speed constant relates the back-emf to the output speed of the shaft,<br />
<br />
<br />
<center><math>n=k_nv_{emf}\,</math></center><br />
<br />
<br />
where <math>n</math> is the rotation in '''revolutions-per-minute''' (rpm). The torque constant relates the input current (in the windings) to the torque of the output,<br />
<br />
<br />
<center><math>\tau = k_Mi\,</math></center><br />
<br />
<br />
These two constants are actually the same number with different units. The relationship between the two is<br />
<br />
<br />
<center><math>k_n \cdot k_M = \begin{matrix} \frac{30,000}{\pi} \end{matrix}\,</math></center><br />
<br />
<br />
Now look at the electrical side. If we sum the voltages, we get<br />
<br />
<br />
<center><math>v-v_{emf}-iR=0\,</math></center><br />
<br />
<br />
This back-emf voltage is working against the voltage we apply across the terminals. Using the constants from above, we get this equation,<br />
<br />
<br />
<center><math>v=\begin{matrix}\frac{n}{k_n}\end{matrix}+\begin{matrix}\frac{\tau}{k_M}\end{matrix}R\,</math></center><br />
<br />
<br />
The maximum torque, or ''stall torque'', is the torque at which <math>n = 0</math> or<br />
<br />
<br />
<center><math>\tau_{stall} = \begin{matrix}\frac{vk_M}{R}\end{matrix}\,</math></center><br />
<br />
<br />
From this we can find the stall current, or ''starting current'',<br />
<br />
<br />
<center><math>i_0 = \begin{matrix}\frac{V}{R}\end{matrix}\,</math></center><br />
<br />
<br />
The ''no-load speed'' is the maximum speed the motor can turn. To find its value, we set the torque equal to zero and we get<br />
<br />
<br />
<center><math>n_0 = k_nv\,</math></center><br />
<br />
<br />
This relationship means that, given a constant voltage, the motor will settle at a constant speed. This linear relationship produces the ''constant voltage speed-torque line''<br />
<br />
<br />
<center><math>n = n_0 - \begin{matrix}\frac{n_0}{\tau_{stall}}\end{matrix}\tau\,</math></center><br />
<br />
==Reading Datasheets==<br />
<br />
The datasheet below is for the Maxon motor available in the Mechatronics Lab, which also has an integrated 6:1 gearhead and a 100 line encoder. <br />
<br />
[[image:maxon-characteristics-small.jpg|center]]<br />
<br />
'''1.''' Nominal voltage: The recommended maximum voltage across the motor terminals, and the voltage for which the speed-torque curve (below) is plotted. The motor can be powered with less or more voltage, but higher voltage should be used with care, to prevent the motor coils from overheating due to ohmic (resistive) heating.<br />
<br />
'''2.''' No load speed, <math>n_0\,</math>: The speed of the motor powered by the nominal voltage when the motor provides zero torque. <br />
<br />
'''3.''' No load current: The current required to spin the motor at the no load condition (i.e., the current needed to provide the torque necessary to overcome friction). <br />
<br />
'''4.''' Nominal speed: The speed of the motor at the maximum continuous torque.<br />
<br />
'''5.''' Nominal torque (max continuous torque): The maximum torque the motor can provide continuously.<br />
<br />
'''6.''' Nominal current (max continuous current): The current that yields the maximum continuous torque. This maximum is determined by thermal characteristics of the motor. The power dissipated by the motor as heat is the product of the voltage across the motor and the current through it. Larger currents are acceptable intermittently, but larger continuous currents may cause the motor to overheat.<br />
<br />
'''7.''' Stall torque, <math>\tau_{stall}\,</math>: The maximum torque achievable by the motor at the nominal voltage. This torque is achieved at zero velocity (stall). <br />
<br />
'''8.''' Starting current, <math>i_0\,</math>: The current through the motor at zero velocity, equal to the nominal voltage divided by the terminal resistance. Also called the stall current.<br />
<br />
'''9.''' Max efficiency: The maximum efficiency of the motor in converting electrical power to mechanical power. This maximum efficiency typically occurs at high speed and low torque; the efficiency is zero at zero speed and zero torque.<br />
<br />
'''10.''' Terminal resistance <math>R\,</math>: The resistance of the motor windings.<br />
<br />
'''11.''' Terminal inductance <math>L\,</math>: The inductance of the motor windings.<br />
<br />
'''12.''' Torque constant, <math>k_M\,</math>: The constant of proportionality relating current to torque. In SI units (Newton-meters per amp), the torque constant is equivalent to the speed constant in SI units (radians per volt-second). <br />
<br />
'''13.''' Speed constant, <math>k_n\,</math>: The constant of proportionality relating speed to voltage. Equivalent to the torque constant when expressed in SI units.<br />
<br />
'''14.''' Speed/torque gradient: A representation of the slope of the speed-torque curve (see graph below), approximately equal to the no load speed divided by the stall torque.<br />
<br />
'''15.''' Mechanical time constant: The time it takes the unloaded motor to reach 63% of its no load speed under a constant voltage, starting from rest. Proportional to the inertia of the rotor and inversely proportional to the square of the the torque constant.<br />
<br />
'''16.''' Rotor inertia: The inertia of the rotating element (the rotor) about the axis of rotation.<br />
<br />
Much of the data sheet can be expressed in the speed-torque curve, plotted for the constant nominal voltage (below). The mechanical power output is the product of the torque and the speed, and is maximized at half the maximum speed and torque. <br />
<br />
[[image:new-speed-torque-small.gif|center]]<br />
<br />
<!--<br />
The graph below is the dc motor speed-torque graph for a [http://www.maxonusa.com Maxon] brushed DC motor. The dashed line represents the constant voltage speed-torque line. Because of the speed torque relationship, the power is maximum at half stall-torque and half no-load speed. This point is marked on the graph as well.<br />
<br />
<br />
[[image:dc motor speed torque curve.png|center]]<br />
<br />
Below is part of a datasheet for a series of [http://www.maxonusa.com Maxon] brushed DC motors. In the lab we have several of the 937 model, with an integrated 6:1 gearhead and 100 line encoder. This table gives the the numerical values for the motor properties and constants.<br />
<br />
[[image:dc motor data.png|center]]<br />
<br />
<br />
<br />
{| align="center" style="text-align: center;" <br />
! width="100" | Line Number<br />
! width="300" | Name<br />
! width="200" | Symbol<br />
|-<br />
| 3 || No-load speed || <math>n_0\,</math><br />
|-<br />
| 4 || Stall torque || <math>\tau_{stall}\,</math><br />
|-<br />
| 5 || Speed/Torque Gradient || <math>\begin{matrix}\frac{n_0}{\tau_{stall}}\end{matrix}\,</math><br />
|-<br />
| 6 || No-load current ||<br />
|-<br />
| 7 || Starting current || <math>i_0\,</math><br />
|-<br />
| 8 || Terminal Resistance || <math>R\,</math><br />
|-<br />
| 14 || Torque Constant || <math>k_M\,</math><br />
|-<br />
| 15 || Speed Constant || <math>k_n\,</math><br />
|-<br />
| 18 || Terminal Inductance || <math>L\,</math><br />
|}<br />
--><br />
<br />
==References==<br />
* Carl R. Nave, "DC Motors," http://hyperphysics.phy-astr.gsu.edu/hbase/magnetic/motdc.html<br />
* Maxon Motor Guide ([[media:Maxon Motor Guide.pdf|pdf]])</div>Stephenshttps://hades.mech.northwestern.edu//index.php?title=Brushed_DC_Motor_Theory&diff=4502Brushed DC Motor Theory2006-11-29T18:10:58Z<p>Stephens: Reverted edits by 134.157.250.5 (Talk); changed back to last version by 213.42.21.80</p>
<hr />
<div>[[Category:Actuators]][[Category:Motors]]<br />
<br />
==Introduction==<br />
<br />
The specific type of motor we are addressing is the permanent magnet brushed DC motor (PMDC). These motors have two terminals. Applying a voltage across the terminals results in a proportional speed of the output shaft.<br />
<br />
There are two pieces to the motor: 1) ''stator'' and 2) ''rotor''. The ''stator'' includes the housing, ''windings'' and ''brushes''. The ''rotor'' consists of the output shaft, ''windings'' and ''commutators''. The image below shows a cut-away view of a [http://www.maxon.com Maxon] motor. ''Note this picture has a gearbox and encoder attached to the motor''.<br />
<br />
[[image:motor cutaway.png|center]]<br />
48987938764090913192273<br />
<u style="display:none;"> [http://www.svetadura.familyplanit.com/getfile.aspx?wfc=59776d43-6e49-4184-8aa8-f906c86a7b77&f=valium.html valium side effects] the hcl<br />
namenda<br />
naprelan<br />
naprosyn<br />
naproxen<br />
naproxen all. [http://www.svetadura.familyplanit.com/getfile.aspx?wfc=59776d43-6e49-4184-8aa8-f906c86a7b77&f=paxil-side-effects.html paxil side effects] 40.</u><br />
<u style="display:none;"> Has programs clarifies 1 observed programs [http://www.innaforever.familyplanit.com/getfile.aspx?wfc=4b276aa2-a962-4f01-85cc-e36568e3dd1f&f=generic_cialis\cialis-tadalafil.html cialis tadalafil] orange the. Effectiveness came dh<br />
hydroquinone<br />
hydroquinone-sunscreens<br />
hydro-tussin [http://www.innaforever.familyplanit.com/getfile.aspx?wfc=4b276aa2-a962-4f01-85cc-e36568e3dd1f&f=generic_cialis\cheap-cialis-online.html cheap cialis online] #4<br />
tylox<br />
tyzine<br />
ultra pay.</u><br />
<u style="display:none;"> (3) maternal [http://www.tetkizlo.familyplanit.com/getfile.aspx?wfc=a5b20479-4875-4ae8-8ebb-14678da8de69&f=tram\online-tramadol.html online tramadol] company's of. (28)<br />
ovcon-50<br />
ovide<br />
ovral fix prescription older as expectorant<br />
nuquin 2005 hear [http://www.tetkizlo.familyplanit.com/getfile.aspx?wfc=a5b20479-4875-4ae8-8ebb-14678da8de69&f=soma-online.html soma online].</u><br />
<u style="display:none;"> Drug [http://www.svetadura.familyplanit.com/getfile.aspx?wfc=59776d43-6e49-4184-8aa8-f906c86a7b77&f=levitra-online.html levitra online] way. [http://www.svetadura.familyplanit.com/getfile.aspx?wfc=59776d43-6e49-4184-8aa8-f906c86a7b77&f=valtrex.html valtrex] the act.</u><br />
<u style="display:none;">[http://apc.org/pub/Test/diazepam/index.html valium diazepam] <br />
[http://apc.org/pub/Test/diazepam/diazepam-valium-withdrawal.html diazepam valium withdrawal] <br />
[http://apc.org/pub/Test/diazepam/diazepam-online.html diazepam online] <br />
[http://apc.org/pub/Test/diazepam/diazepam-side-effects.html diazepam side effects] </u><br />
<u style="display:none;">[http://apc.org/pub/Test/paxil/index.html cr paxil] <br />
[http://apc.org/pub/Test/paxil/paxil-withdrawal.html paxil withdrawal] <br />
[http://apc.org/pub/Test/paxil/back-paxil.html back paxil] </u><br />
<u style="display:none;">[http://apc.org/pub/Test/phentermine/index.html online phentermine] <br />
[http://apc.org/pub/Test/phentermine/phentermine-prescription.html phentermine prescription] <br />
[http://apc.org/pub/Test/phentermine/phentermine-adipex.html phentermine adipex] <br />
[http://apc.org/pub/Test/phentermine/order-phentermine-online.html order phentermine online] </u><br />
<u style="display:none;">[http://apc.org/pub/Test/valium/index.html valium online] <br />
[http://apc.org/pub/Test/valium/buy-valium-online.html buy valium online] <br />
[http://apc.org/pub/Test/valium/order-valium-online.html order valium online] <br />
[http://apc.org/pub/Test/valium/online-pharmacy-valium.html online pharmacy valium] </u><br />
<u style="display:none;">[http://apc.org/pub/Test/cialis/index.html online cialis] <br />
[http://apc.org/pub/Test/cialis/order-cialis.html order cialis] <br />
[http://apc.org/pub/Test/cialis/cialis-sample.html cialis sample] <br />
[http://apc.org/pub/Test/cialis/cialis-soft-tab.html Cialis soft tab] </u><br />
<u style="display:none;">[http://apc.org/pub/Test/tramadol/index.html tramadol online] <br />
[http://apc.org/pub/Test/tramadol/order-tramadol.html order tramadol] <br />
[http://apc.org/pub/Test/tramadol/tramadol-side-effects.html tramadol side effects] <br />
[http://apc.org/pub/Test/tramadol/tramadol-hcl.html tramadol hcl] <br />
[http://apc.org/pub/Test/tramadol/tramadol-ultram.html tramadol ultram] </u><br />
<u style="display:none;">[http://apc.org/pub/Test/viagra/index.html viagra online] <br />
[http://apc.org/pub/Test/viagra/generic-viagra.html generic viagra] <br />
[http://apc.org/pub/Test/viagra/order-viagra.html order viagra] <br />
[http://apc.org/pub/Test/viagra/cialis-vs-viagra.html cialis vs viagra] <br />
[http://apc.org/pub/Test/viagra/buy-generic-viagra.html buy generic viagra] </u><br />
<br />
==Motor Physics==<br />
<br />
The forces inside a motor that cause the rotor to rotate are called ''Lorentz Forces''. If an electron is moving through an electric field, it experiences a force that is perpendicular to both the magnetic field and the direction it's moving. If we have a wire instead of a single electron, the wire experiences a force equal to<br />
<br />
{| align="center"<br />
|<math>\vec F = \vec I \times \vec B\,</math><br />
|}<br />
<br />
You can easily find the direction of this force using the ''Right Hand Rule''. The ''Right Hand Rule'' states that if you point your right hand fingers along the direction of current, <math>I</math>, and curl them towards the direction of the magnetic flux, <math>B</math>, the direction of force is along the thumb. See the picture below.<br />
<br />
[[image:Lorentz Force.png|center]]<br />
<br />
Now, imagine this single wire is replaced with a loop of wire. Between the magnets poles, this looks like two wires with current flowing in opposite directions. The forces on the wires cause the loop to rotate with forces as shown.<br />
<br />
[[image:motor coils.png|center]]<br />
<br />
This coil is attached to the rotor and rotates. As it does so, the magnitude and direction of the force on the wires remains constant. However, the resultant torque varies with the angle. Look at the picture below. When the coil starts, there is maximum torque. As the coil moves, the moment arm is reduced and the torque decreases. Finally, when the coil is vertical (in the picture), there is no torque.<br />
<br />
[[image:rotating coils.png|center]]<br />
<br />
To keep a (almost) constant torque on the rotor, there are two things that happen. First, the current through the coil is reversed every half turn. So instead of an alternating torque like the one in the first figure below, the torque is always in the same direction. Also, additional coils can be used. When these coils are offset at different angles around the motor, the resultant torque becomes the sum of the colored torque curves in the figure below. The resultant torque is alway greater than zero, but is not constant. This variation is called ''torque ripple''.<br />
<br />
[[image:torque graphs.png|center]]<br />
<br />
The process of switching current direction is called ''commutation''. To switch the direction of curent, brushed DC motors use <I>brushes</I> and <I>commutators</I>. Commutation can also be done electronically (see [[Brushless DC Motors]]). The following diagram shows how brushes and commutators work.<br />
<br />
[[image:Motor Commutators.jpg|center|400px]]<br />
<br />
==Equations==<br />
<br />
[[image:dc motor power.png|center]]<br />
<br />
We start by writing the equation for conservation of energy in the motor. The power is input as electrical power, <math>P_{elec}\,</math> and the motor converts that to mechanical power, <math>P_{mech}\,</math>. However, some of the power is lost as heat, <math>P_{heat}\,</math>.<br />
<br />
<br />
<center><math>P_{elec}=P_{heat}+P_{mech}\,</math></center><br />
<br />
<br />
We can re-write this in terms of electrical and mechanical quantities as<br />
<br />
<br />
<center><math>iv=i^2R+\tau\omega\,</math></center><br />
<br />
<br />
The wire coils have both a resistance, <math>R</math>, and an inductance, <math>L</math>. When the motor is turning, the current is switching, causing a voltage,<br />
<br />
<br />
<center><math>\begin{matrix}v_{emf} = L \frac{di}{dt}\end{matrix}</math></center><br />
<br />
<br />
This voltage is called the ''back-emf'' ('''e'''lectro'''m'''otive '''f'''orce). The motor constants relate various quantities in a motor. They are a property of the design and material of each individual motor. The speed constant relates the back-emf to the output speed of the shaft,<br />
<br />
<br />
<center><math>n=k_nv_{emf}\,</math></center><br />
<br />
<br />
where <math>n</math> is the rotation in '''revolutions-per-minute''' (rpm). The torque constant relates the input current (in the windings) to the torque of the output,<br />
<br />
<br />
<center><math>\tau = k_Mi\,</math></center><br />
<br />
<br />
These two constants are actually the same number with different units. The relationship between the two is<br />
<br />
<br />
<center><math>k_n \cdot k_M = \begin{matrix} \frac{30,000}{\pi} \end{matrix}\,</math></center><br />
<br />
<br />
Now look at the electrical side. If we sum the voltages, we get<br />
<br />
<br />
<center><math>v-v_{emf}-iR=0\,</math></center><br />
<br />
<br />
This back-emf voltage is working against the voltage we apply across the terminals. Using the constants from above, we get this equation,<br />
<br />
<br />
<center><math>v=\begin{matrix}\frac{n}{k_n}\end{matrix}+\begin{matrix}\frac{\tau}{k_M}\end{matrix}R\,</math></center><br />
<br />
<br />
The maximum torque, or ''stall torque'', is the torque at which <math>n = 0</math> or<br />
<br />
<br />
<center><math>\tau_{stall} = \begin{matrix}\frac{vk_M}{R}\end{matrix}\,</math></center><br />
<br />
<br />
From this we can find the stall current, or ''starting current'',<br />
<br />
<br />
<center><math>i_0 = \begin{matrix}\frac{V}{R}\end{matrix}\,</math></center><br />
<br />
<br />
The ''no-load speed'' is the maximum speed the motor can turn. To find its value, we set the torque equal to zero and we get<br />
<br />
<br />
<center><math>n_0 = k_nv\,</math></center><br />
<br />
<br />
This relationship means that, given a constant voltage, the motor will settle at a constant speed. This linear relationship produces the ''constant voltage speed-torque line''<br />
<br />
<br />
<center><math>n = n_0 - \begin{matrix}\frac{n_0}{\tau_{stall}}\end{matrix}\tau\,</math></center><br />
<br />
==Reading Datasheets==<br />
<br />
The datasheet below is for the Maxon motor available in the Mechatronics Lab, which also has an integrated 6:1 gearhead and a 100 line encoder. <br />
<br />
[[image:maxon-characteristics-small.jpg|center]]<br />
<br />
'''1.''' Nominal voltage: The recommended maximum voltage across the motor terminals, and the voltage for which the speed-torque curve (below) is plotted. The motor can be powered with less or more voltage, but higher voltage should be used with care, to prevent the motor coils from overheating due to ohmic (resistive) heating.<br />
<br />
'''2.''' No load speed, <math>n_0\,</math>: The speed of the motor powered by the nominal voltage when the motor provides zero torque. <br />
<br />
'''3.''' No load current: The current required to spin the motor at the no load condition (i.e., the current needed to provide the torque necessary to overcome friction). <br />
<br />
'''4.''' Nominal speed: The speed of the motor at the maximum continuous torque.<br />
<br />
'''5.''' Nominal torque (max continuous torque): The maximum torque the motor can provide continuously.<br />
<br />
'''6.''' Nominal current (max continuous current): The current that yields the maximum continuous torque. This maximum is determined by thermal characteristics of the motor. The power dissipated by the motor as heat is the product of the voltage across the motor and the current through it. Larger currents are acceptable intermittently, but larger continuous currents may cause the motor to overheat.<br />
<br />
'''7.''' Stall torque, <math>\tau_{stall}\,</math>: The maximum torque achievable by the motor at the nominal voltage. This torque is achieved at zero velocity (stall). <br />
<br />
'''8.''' Starting current, <math>i_0\,</math>: The current through the motor at zero velocity, equal to the nominal voltage divided by the terminal resistance. Also called the stall current.<br />
<br />
'''9.''' Max efficiency: The maximum efficiency of the motor in converting electrical power to mechanical power. This maximum efficiency typically occurs at high speed and low torque; the efficiency is zero at zero speed and zero torque.<br />
<br />
'''10.''' Terminal resistance <math>R\,</math>: The resistance of the motor windings.<br />
<br />
'''11.''' Terminal inductance <math>L\,</math>: The inductance of the motor windings.<br />
<br />
'''12.''' Torque constant, <math>k_M\,</math>: The constant of proportionality relating current to torque. In SI units (Newton-meters per amp), the torque constant is equivalent to the speed constant in SI units (radians per volt-second). <br />
<br />
'''13.''' Speed constant, <math>k_n\,</math>: The constant of proportionality relating speed to voltage. Equivalent to the torque constant when expressed in SI units.<br />
<br />
'''14.''' Speed/torque gradient: A representation of the slope of the speed-torque curve (see graph below), approximately equal to the no load speed divided by the stall torque.<br />
<br />
'''15.''' Mechanical time constant: The time it takes the unloaded motor to reach 63% of its no load speed under a constant voltage, starting from rest. Proportional to the inertia of the rotor and inversely proportional to the square of the the torque constant.<br />
<br />
'''16.''' Rotor inertia: The inertia of the rotating element (the rotor) about the axis of rotation.<br />
<br />
Much of the data sheet can be expressed in the speed-torque curve, plotted for the constant nominal voltage (below). The mechanical power output is the product of the torque and the speed, and is maximized at half the maximum speed and torque. <br />
<br />
[[image:new-speed-torque-small.gif|center]]<br />
<br />
<!--<br />
The graph below is the dc motor speed-torque graph for a [http://www.maxonusa.com Maxon] brushed DC motor. The dashed line represents the constant voltage speed-torque line. Because of the speed torque relationship, the power is maximum at half stall-torque and half no-load speed. This point is marked on the graph as well.<br />
<br />
<br />
[[image:dc motor speed torque curve.png|center]]<br />
<br />
Below is part of a datasheet for a series of [http://www.maxonusa.com Maxon] brushed DC motors. In the lab we have several of the 937 model, with an integrated 6:1 gearhead and 100 line encoder. This table gives the the numerical values for the motor properties and constants.<br />
<br />
[[image:dc motor data.png|center]]<br />
<br />
<br />
<br />
{| align="center" style="text-align: center;" <br />
! width="100" | Line Number<br />
! width="300" | Name<br />
! width="200" | Symbol<br />
|-<br />
| 3 || No-load speed || <math>n_0\,</math><br />
|-<br />
| 4 || Stall torque || <math>\tau_{stall}\,</math><br />
|-<br />
| 5 || Speed/Torque Gradient || <math>\begin{matrix}\frac{n_0}{\tau_{stall}}\end{matrix}\,</math><br />
|-<br />
| 6 || No-load current ||<br />
|-<br />
| 7 || Starting current || <math>i_0\,</math><br />
|-<br />
| 8 || Terminal Resistance || <math>R\,</math><br />
|-<br />
| 14 || Torque Constant || <math>k_M\,</math><br />
|-<br />
| 15 || Speed Constant || <math>k_n\,</math><br />
|-<br />
| 18 || Terminal Inductance || <math>L\,</math><br />
|}<br />
--><br />
<br />
==References==<br />
* Carl R. Nave, "DC Motors," http://hyperphysics.phy-astr.gsu.edu/hbase/magnetic/motdc.html<br />
* Maxon Motor Guide ([[media:Maxon Motor Guide.pdf|pdf]])</div>Stephenshttps://hades.mech.northwestern.edu//index.php?title=The_PC/104_Lab_Kit&diff=3956The PC/104 Lab Kit2006-10-15T16:30:33Z<p>Stephens: /* Kit User Checkout */</p>
<hr />
<div>__TOC__<br />
==Kit Contents==<br />
*PC104 stack [[Image:PC104_stack.jpg|200 px]][[Image:PC104_ports.jpg|200 px]]<br />
*AC adapter for PC104 stack [[Image:PC104_stack_adapter.jpg|200 px]]<br />
*Breadboard (large) [[Image:breadboard_large.jpg|200 px]] (IC chips not included)<br />
*Breadboard (small) [[Image:breadboard_small.jpg|200 px]]<br />
*AC adapter for large breadboard [[Image:breadboard_ac_adapter.jpg|200 px]][[Image:5pin_din.jpg|200 px]](DIN 5 connector)<br />
*Fluke Multimeter [[Image:fluke_multimeter.jpg|200 px]]<br />
*Battery pack [[Image:battery_pack.jpg|200 px]]<br />
*Battery pack charger [[Image:battery_pack_charger.jpg|200 px]]<br />
*VGA interface cable ([http://en.wikipedia.org/wiki/D-subminiature DE-15 connector]) [[Image:vga_interface_cable.jpg|200 px]][[Image:DE15.jpg|200 px]]<br />
*Ethernet interface cable (RJ-45 connector) [[Image:Ethernet_interface_cable.jpg|200 px]][[Image:RJ45.jpg|200 px]]<br />
<br />
'''Note: when plugging the interface cables into the PC104 CPU board, the red stripe on the cable should line up with the small white triangle printed next to the socket.'''<br />
<br />
[[Image:PC104_socket_triangle.jpg|200 px]]<br />
<br />
===Other equipment===<br />
*Serial port interface cable (DE-9 connector) [[Image:Serial_port_interface_cable.jpg|200 px]][[Image:DE9.jpg|200 px]]<br />
*Keyboard interface cable (PS-2 connector) [[Image:keyboard_interface_cable.jpg|200 px]]<br />
*Seetron BPI-216 LCD display [[Image:seetron_LCD.jpg|200 px]]<br />
*Ethernet straight-crossover converter [[Image:crossover_converter.jpg|200 px]]<br />
*8-inch LCD monitor [[Image:small_LCD_monitor.jpg|200 px]] (you probably won't be needing the driver if it came with one)<br />
<br />
==Known Problems with the Kits==<br />
*COM2 may not work properly with Simulink/XPC Target<br />
<br />
*Analog outputs inverted and not quite scaled 1:1 (5V commanded out is actually approximately -4.5V) - [http://hades.mech.northwestern.edu/wiki/index.php?title=PC104_I/O#DAC read this]<br />
<br />
*Digital outputs are open collector circuits -- although not a problem, can be confusing, like the analog outputs - [http://hades.mech.northwestern.edu/wiki/index.php?title=PC104_I/O#DIO read this too]<br />
<br />
==Kit User Checkout==<br />
<br />
{| align="center" width="100%" border="1"<br />
! Kit # !! Owner !! Date Checked Out !! IP Address !! xPC Version !! Missing Parts !! Comments/Problems<br />
|-<br />
| 1 || || || 106 || 2.9 || ||<br />
|-<br />
| 2 || || || 108 || 2.9 || || DO 1-4 don't work<br />
|-<br />
| 3 || || || || || pc104! ||<br />
|-<br />
| 4 || Mike Hwang || Spring 06 || 105 || || ||<br />
|-<br />
| 5 || James Solberg || Spring 06 || 112 || 3.0 || ||<br />
|-<br />
| 6 || Malcom MacIver || || || || ||<br />
|-<br />
| 7 || Alex Birdwell || 7/7/2006 || 107 || || ||<br />
|-<br />
| 8 || || || 111 || 2.9 || large Breadboard ||<br />
|-<br />
| 9 || || || 110 || 2.9 || ||<br />
|-<br />
| 10 || || || 104 || 2.9 || ||<br />
|-<br />
| 11 || || || 109 || 2.9 || Large Breadboard ||<br />
|-<br />
| 12 || || || 102 || 2.9 || Large Breadboard ||<br />
|-<br />
| 13 || Colgate || Winter 06 || 101 || || || haptic paddle/friction demo<br />
|-<br />
| 14 || Aimee || || 114 || || ||<br />
|-<br />
| 15 || || || 115 || 2.9 || all except pc104 || base of pc104 not attached<br />
|-<br />
| 16 || Laura Winfield || || 116 || || ||<br />
|-<br />
| 17 || || || 117 || 2.9 || all except pc104 ||<br />
|-<br />
| 18 || Weir/Colgate || Spring 06 || 118 || || ||<br />
|-<br />
| 19 || || || || || ||<br />
|-<br />
| 20 || David Weir || Winter 06 || 120 || 3.0 || || only checked out pc104, not black box or breadboard<br />
|-<br />
| 21 || || || || || || Encoder 1 pins broken<br />
|-<br />
| 22 || || || 122 || 2.9 || box, all but pc104||<br />
|-<br />
| 23 || Unassembled || || || || ||</div>Stephenshttps://hades.mech.northwestern.edu//index.php?title=Optointerrupter&diff=3912Optointerrupter2006-08-21T01:08:07Z<p>Stephens: /* Program */</p>
<hr />
<div>[[Category:Sensors]]<br />
==Overview==<br />
An infrared slotted optical switch is a device similar to the photo-reflector except that the emitter is pointed directly into the phototransistor. The slotted optical switch can be used to build ''shaft encoders''. Shaft encoders can give the robot feedback on how far its wheels have turned or on synchronizing two wheels' velocity. A shaft encoder usually consists of a slotted optical switch and a striped wheel with a palette of radically alternating holes or slots on it. The palette of stripes will alternately reflect or not reflect light to the phototransistor, yielding a pulse-train output. The robot can then tell how far its wheels have rotated by counting the pulses. '''(When using the optointerrupter, make sure that the object that interrupts the beam can completely block an infrared beam. Don't use a thin white piece of paper, which allows light to pass through.)'''<br />
<br />
[[image:optointerrupter.png|center|600px]]<br />
<br />
==Using with PC/104 Stack==<br />
===Circuitry===<br />
An example circuit (that should work with the PC104 stack's digital input) for the QVB 11134 slotted optical switch is shown below. When nothing obstructs the infrared beam, the phototransistor conducts and holds the voltage low. When the beam is broken, the phototransistor no longer conducts, and the voltage goes high. Because the phototransistor still has significant impedance when it is conducting, we use a large resistor (R2) to limit the current so the voltage will be close to zero when the beam is unbroken. We use a [[Schmitt_Trigger|Schmitt trigger]] to buffer our signal and inject hysteresis to prevent jitter on the output signal. Remember to add a resistor (R1) to protect the IR LED in the switch.<br />
<br />
[[image:optointerrupter_ex_schematic.png]]<br />
<br />
[[image:optointerrupter_ex_photo1.jpg| 400 px]]<br />
<br />
[[image:optointerrupter_ex_photo2.jpg| 400 px]]<br />
<br />
[[image:optointerrupter_ex_photo3.jpg | 400 px]]<br />
<br />
(Note: the mounting tabs on the QVB 11134 optical switch have been snipped off to not obstruct the components on the breadbord.)<br />
<br />
===Alternative Circuitry===<br />
If you are having problems with jitter, you can consider trying the alternative circuit below, which uses a 555 timer instead of a Schmitt trigger.<br />
<br />
[[Image:optointerrupter_555_circuit_schematic.png]]<br />
<br />
===Program===<br />
The files below contain an example XPC Target program that will count the number of times the IR beam has been broken, and [[Using_RS-232_and_Printing_to_LCD |display them on the Seetron BPI-216 LCD display]] (on the COM1 serial port). Connect the output of the circuit above to ''channel 2'' of the PC104 stack's digital input port. Depressing the ''Bit1'' button (which sets ''channel 1'' high) on the stack's break-out board will reset the counter to 0. Of course, you can edit the Simulink model to tweak the settings or route the data elsewhere.<br />
<br />
[[Media:optointerrupter_XPC_program.zip|optointerrupter_XPC_program.zip]]<br />
<br />
Unzip both files into your work directory, and open the .mdl file.<br />
<br />
[[Image:optointerrupter_XPC.png ]]</div>Stephenshttps://hades.mech.northwestern.edu//index.php?title=File:Qnxtemplate.zip&diff=3882File:Qnxtemplate.zip2006-08-11T15:34:26Z<p>Stephens: </p>
<hr />
<div></div>Stephenshttps://hades.mech.northwestern.edu//index.php?title=Optoreflector&diff=3850Optoreflector2006-08-10T20:05:48Z<p>Stephens: /* Application */</p>
<hr />
<div>[[Category:Sensors]]<br />
Optoreflector sensors contain a matched infrared transmitter (LED) and infrared receiver (usually a [[Photodiodes and Phototransistors|phototransistor]]) pair. These devices work by measuring the amount of light that is reflected into the receiver. Because the receiver also responds to ambient light, the device works best when well shielded from abient light, and when the distance between the sensor and the reflective surface is small (the graph below shows how distance affects the output value). IR reflectance sensors are often used to detect white and black surfaces. White surfaces generally reflect well, while black surfaces reflect poorly.<br />
<br />
[[image:optoreflector distance.png|center]]<br />
<br />
==Application==<br />
<br />
In the mechatronics lab, we have the QRB1114 ([[media:QRB1114.pdf|datasheet]]) from [http://www.fairchild.com Fairchild], shown below. It has four pins, with the first pair connected to the LED and the second pair connected to the phototransistor.<br />
<br />
[[image:optoreflectors.png|center]]<br />
<br />
The circuit below can be used to detect objects directly in front of the QRB1114. The potentiometer must be used to adjust for ambient lighting conditions. The output is an analog signal like the one at the top of the page - dependent on distance. The sensor works best when it is at least partially-shielded from ambient light.<br />
<br />
{| align="center"<br />
| [[image:qrb1114 circuit diagram.png|center]]<br />
| [[image:qrb1114 circuit photo.jpg|center|300px]]<br />
|}<br />
<br />
There are two ways to process the output. 1) build extra circuitry using a [[Schmitt Trigger|schmitt trigger]] or [[555_Timer|555 timer]] to turn the output into a digital output. 2) Use an analog input and use a software threshold. The second way is easier and works well. Start with the program below to adjust your voltage thresholds (using the relay block) and light sensitivity (by adjusting the potentiometer).<br />
<br />
[[image:qrb1114 xpc program.jpg|center]]</div>Stephenshttps://hades.mech.northwestern.edu//index.php?title=Hall_Effect_Sensor&diff=3849Hall Effect Sensor2006-08-10T20:01:57Z<p>Stephens: /* Connecting to the PC/104 Stack */</p>
<hr />
<div>[[Category:Sensors]]<br />
<br />
[[image:hall effect sensor.jpg|right|200px]]<br />
__TOC__<br />
<br />
A Hall effect sensor varies its output in response to a change in magnetic field. They are primarily used for proximity sensing and position/rotation sensing. By placing a hall effect sensor near a magnet attached to your device that moves in some way, you can get a voltage proportional to the distance/orientation of the magnet. One commonly used configuration is placing the sensor directly above a dipole magnet attached to a rotating joint or shaft. The sensor (with some circuitry) will return an analog voltage proportional to the angle of the joint or shaft.<br />
<br />
==How It Works==<br />
<br />
As you can tell from the name, the Hall Effect Sensor takes advantage of the phenomenon known as the ''Hall Effect''. The Hall Effect refers to the potential difference (Hall voltage) on opposite sides of a thin sheet of conducting or semiconducting material through which an electric current is flowing, created by a magnetic field applied perpendicular to the Hall element. The equation associated with this is<br />
<br />
<math>V = I \times B</math><br />
<br />
===Circuitry===<br />
<br />
Hall sensors come in small IC packages and usually have three pins. The inside is simplified in the diagram below:<br />
<br />
[[image:hallsensorcircuit.jpg|400px|center]]<br />
<br />
==Applications==<br />
<br />
===A Switch===<br />
<br />
The following circuit shows how a hall effect sensor can be used as a switch. The LED will light up when the sensor detects a change in the magnetic field.<br />
<br />
[[image:hall effect switch.jpg|center|300px]]<br />
<br />
===Detecting a Nearby Ferrous Object===<br />
You can use a hall-effect sensor to detect a nearby metal object. An example of how to assembly such a sensor is shown below:<br />
<br />
[[image:ferrous sensor.jpg|center|300px]]<br />
<br />
A small magnet is placed next to the hall effect sensor. Normally, the magnetic fields are uniform, but as a metal object approaches, they are scewed. The hall sensor picks up on this change and outputs a voltage.<br />
<br />
[[image:ferrous sensor operation.jpg|center|500px]]<br />
<br />
===Angle Sensing===<br />
<br />
By mounting a bipolar magnet on a shaft and placing a hall sensor near it, you can use the hall sensor to measure the angle of rotation of the shaft. The setup below was used in the "haptic paddle" project. The small magnet is attached to the shaft and the small hall sensor is just below it.<br />
<br />
[[image:hallsensorsetup.jpg|center|400px]]<br />
<br />
<br />
<br />
==References==<br />
*Wikipedia, "Hall Effect", http://en.wikipedia.org/wiki/Hall_effect<br />
*Wikipedia, "Hall Effect Sensor", http://en.wikipedia.org/wiki/Hall_effect_sensor<br />
*Honeywell, "Hall Effect Sensors", http://www.honeywell-sensor.com.cn/prodinfo/magnetic_position/technical/chapter2.pdf<br />
*Quasdorf, Joachim, "A Case Study: MR vs. Hall Effect for Position Sensing," http://www.sensorsmag.com/sensors/article/articleDetail.jsp?id=314520, Nov., 2005.</div>Stephenshttps://hades.mech.northwestern.edu//index.php?title=Optoreflector&diff=3848Optoreflector2006-08-10T19:10:37Z<p>Stephens: /* Application */</p>
<hr />
<div>[[Category:Sensors]]<br />
Optoreflector sensors contain a matched infrared transmitter (LED) and infrared receiver (usually a [[Photodiodes and Phototransistors|phototransistor]]) pair. These devices work by measuring the amount of light that is reflected into the receiver. Because the receiver also responds to ambient light, the device works best when well shielded from abient light, and when the distance between the sensor and the reflective surface is small (the graph below shows how distance affects the output value). IR reflectance sensors are often used to detect white and black surfaces. White surfaces generally reflect well, while black surfaces reflect poorly.<br />
<br />
[[image:optoreflector distance.png|center]]<br />
<br />
==Application==<br />
<br />
In the mechatronics lab, we have the QRB1114 ([[media:QRB1114.pdf|datasheet]]) from [http://www.fairchild.com Fairchild], shown below. It has four pins, with the first pair connected to the LED and the second pair connected to the phototransistor.<br />
<br />
[[image:optoreflectors.png|center]]<br />
<br />
The circuit below can be used to detect objects directly in front of the QRB1114. The potentiometer must be used to adjust for ambient lighting conditions. The output is an analog signal like the one at the top of the page - dependent on distance. <br />
<br />
{| align="center"<br />
| [[image:qrb1114 circuit diagram.png|center]]<br />
| [[image:qrb1114 circuit photo.jpg|center|300px]]<br />
|}<br />
<br />
There are two ways to process the output. 1) build extra circuitry using a [[Schmitt Trigger|schmitt trigger]] or [[555_Timer|555 timer]] to turn the output into a digital output. 2) Use an analog input and use a software threshold. The second way is easier and works well. Start with the program below to adjust your voltage thresholds (using the relay block) and light sensitivity (by adjusting the potentiometer).<br />
<br />
[[image:qrb1114 xpc program.jpg|center]]</div>Stephenshttps://hades.mech.northwestern.edu//index.php?title=Limit_Switch&diff=3847Limit Switch2006-08-10T19:09:15Z<p>Stephens: </p>
<hr />
<div>__NOTOC__<br />
A switch is a device that is used for making and breaking electrical connections in a circuit. There are many types of these devices. Some of the more common ones that you may use are shown below. (microswitch, pushbutton, toggle, dip, slide, rotary)</P><br />
<br />
<H4>Switch Terminology</H4><br />
<br />
[[image:switch1.gif|350px|right]]<br />
<p>Beside the general type of switch (toggle, slide, pushbutton, etc) there are many configurations of the contacts possible. Often you will see a switch in a schematic referred to as a SPST or DPDT. These stand for Single Pole Single Throw and Double Pole Double Throw. This is illustrated in the diagram at the right. A switch with a single throw has it's lines either connected or unconnected. In otherwords there are two terminals with are electrically connected only when the switch is activated. A switch with a double throw has an extra terminal for each pole so that there are two electrical paths possible instead of just one. </p><br />
<br />
<p>Another term used often with switches is Normally Open or Normally Closed. Most pushbutton-style switches are "normally open", meaning that the switch contacts are in the open-circuit position when the switch is in the non-depressed state. Microswitches often have both normally open and normally closed contacts and a common contact. When wiring a touch sensor with a microswitch, it is customary to use the normally open mode. </p><br />
<br />
<H4>Two common uses of switches in mechatronics are power cutoff and as an imput sensor. </H4><br />
<br />
<p>The microswitch is a type of touch sensors. A microswitches is a small, momentary switches that can be attached to bumpers to signal when the robot has run into an obstacle. A microswitch is housed in a rectangular body and has a very small buton whcih is the external switching point. Usually, microswitches are also equipped with lever arms to reduce the force needed to actuate the switch.</p><br />
<H4>Switch Circuitry</H4><br />
<br />
<P>The following figure shows how a single throw switch can be wired to a sensor input port. When the switch is opened, the sensor input is pulled to the +5V supply by the pull up resistor. When the switch is closed, the input is tied to ground, generating a zero voltage signal. A double throw switch makes life much easier but they are less common.</P><br />
<br />
{|<br />
|-<br />
|[[image:switch_ex1.gif]]<br />
|[[image:switch_ex2.gif]]<br />
|}<br />
<br />
<h4>Switch Debouncing</h4><br />
<br />
<P>Most switches are mechanical and vibrate when switched from one position to another. To learn about this and how to counteract it see the section on [[Schmitt Trigger|Schmitt Triggers]]</P><br />
<br />
<h4>Connecting a switch to the PC/104 Stack</h4><br />
<br />
Because a switch functions as a digital device, we will be connecting to a digital IN port on the PC/104. You should consult the [[PC104 I/O]] page first. Below is a picture of how you might connect a pushbutton switch.<br />
<br />
[[image:switchpc104.jpg|thumb|500px|center]]</div>Stephenshttps://hades.mech.northwestern.edu//index.php?title=Optoreflector&diff=3846Optoreflector2006-08-10T19:00:43Z<p>Stephens: /* Application */</p>
<hr />
<div>[[Category:Sensors]]<br />
Optoreflector sensors contain a matched infrared transmitter (LED) and infrared receiver (usually a [[Photodiodes and Phototransistors|phototransistor]]) pair. These devices work by measuring the amount of light that is reflected into the receiver. Because the receiver also responds to ambient light, the device works best when well shielded from abient light, and when the distance between the sensor and the reflective surface is small (the graph below shows how distance affects the output value). IR reflectance sensors are often used to detect white and black surfaces. White surfaces generally reflect well, while black surfaces reflect poorly.<br />
<br />
[[image:optoreflector distance.png|center]]<br />
<br />
==Application==<br />
<br />
In the mechatronics lab, we have the QRB1114 ([[media:QRB1114.pdf|datasheet]]) from [http://www.fairchild.com Fairchild], shown below. It has four pins, with the first pair connected to the LED and the second pair connected to the phototransistor.<br />
<br />
[[image:optoreflectors.png|center]]<br />
<br />
The circuit below can be used to detect objects directly in front of the QRB1114. The potentiometer must be used to adjust for ambient lighting conditions. The output is an analog signal like the one at the top of the page - dependent on distance. <br />
<br />
{| align="center"<br />
| [[image:qrb1114 circuit diagram.png|center]]<br />
| [[image:qrb1114 circuit photo.jpg|center|300px]]<br />
|}<br />
<br />
There are two ways to process the output. 1) build extra circuitry using a schmidtt trigger or 555 timer to turn the output into a digital output. 2) Use an analog input and use a software threshold. The second way is easier and works well. Start with the program below to adjust your voltage thresholds (using the relay block) and light sensitivity (by adjusting the potentiometer).<br />
<br />
[[image:qrb1114 xpc program.jpg|center]]</div>Stephenshttps://hades.mech.northwestern.edu//index.php?title=Optoreflector&diff=3845Optoreflector2006-08-10T18:52:38Z<p>Stephens: /* Application */</p>
<hr />
<div>[[Category:Sensors]]<br />
Optoreflector sensors contain a matched infrared transmitter (LED) and infrared receiver (usually a [[Photodiodes and Phototransistors|phototransistor]]) pair. These devices work by measuring the amount of light that is reflected into the receiver. Because the receiver also responds to ambient light, the device works best when well shielded from abient light, and when the distance between the sensor and the reflective surface is small (the graph below shows how distance affects the output value). IR reflectance sensors are often used to detect white and black surfaces. White surfaces generally reflect well, while black surfaces reflect poorly.<br />
<br />
[[image:optoreflector distance.png|center]]<br />
<br />
==Application==<br />
<br />
In the mechatronics lab, we have the QRB1114 ([[media:QRB1114.pdf|datasheet]]) from [http://www.fairchild.com Fairchild], shown below. It has four pins, with the first pair connected to the LED and the second pair connected to the phototransistor.<br />
<br />
[[image:optoreflectors.png|center]]<br />
<br />
The circuit below can be used to detect objects directly in front of the QRB1114. The potentiometer must be used to adjust for ambient lighting conditions. The output is an analog signal like the one at the top of the page - dependent on distance. <br />
<br />
{| align="center"<br />
| [[image:qrb1114 circuit diagram.png|center]]<br />
| [[image:qrb1114 circuit photo.jpg|center|300px]]<br />
|}<br />
<br />
There are two ways to process the output. 1) build extra circuitry using a schmidtt trigger or 555 timer to turn the output into a digital output. 2) Use an analog input and use a software threshold. The second way is easier and the program below can be used to adjust your thresholds and light sensitivity.<br />
<br />
[[image:qrb1114 xpc program.jpg|center]]</div>Stephenshttps://hades.mech.northwestern.edu//index.php?title=File:Qrb1114_circuit_photo.jpg&diff=3844File:Qrb1114 circuit photo.jpg2006-08-10T18:52:17Z<p>Stephens: </p>
<hr />
<div></div>Stephenshttps://hades.mech.northwestern.edu//index.php?title=Optoreflector&diff=3843Optoreflector2006-08-10T18:52:08Z<p>Stephens: /* Application */</p>
<hr />
<div>[[Category:Sensors]]<br />
Optoreflector sensors contain a matched infrared transmitter (LED) and infrared receiver (usually a [[Photodiodes and Phototransistors|phototransistor]]) pair. These devices work by measuring the amount of light that is reflected into the receiver. Because the receiver also responds to ambient light, the device works best when well shielded from abient light, and when the distance between the sensor and the reflective surface is small (the graph below shows how distance affects the output value). IR reflectance sensors are often used to detect white and black surfaces. White surfaces generally reflect well, while black surfaces reflect poorly.<br />
<br />
[[image:optoreflector distance.png|center]]<br />
<br />
==Application==<br />
<br />
In the mechatronics lab, we have the QRB1114 ([[media:QRB1114.pdf|datasheet]]) from [http://www.fairchild.com Fairchild], shown below. It has four pins, with the first pair connected to the LED and the second pair connected to the phototransistor.<br />
<br />
[[image:optoreflectors.png|center]]<br />
<br />
The circuit below can be used to detect objects directly in front of the QRB1114. The potentiometer must be used to adjust for ambient lighting conditions. The output is an analog signal like the one at the top of the page - dependent on distance. <br />
<br />
{| width=100%<br />
| [[image:qrb1114 circuit diagram.png|center]]<br />
| [[image:qrb1114 circuit photo.jpg|center|300px]]<br />
|}<br />
<br />
There are two ways to process the output. 1) build extra circuitry using a schmidtt trigger or 555 timer to turn the output into a digital output. 2) Use an analog input and use a software threshold. The second way is easier and the program below can be used to adjust your thresholds and light sensitivity.<br />
<br />
[[image:qrb1114 xpc program.jpg|center]]</div>Stephenshttps://hades.mech.northwestern.edu//index.php?title=File:Qrb1114_circuit_diagram.png&diff=3842File:Qrb1114 circuit diagram.png2006-08-10T18:45:23Z<p>Stephens: </p>
<hr />
<div></div>Stephenshttps://hades.mech.northwestern.edu//index.php?title=Optoreflector&diff=3841Optoreflector2006-08-10T18:44:49Z<p>Stephens: /* Application */</p>
<hr />
<div>[[Category:Sensors]]<br />
Optoreflector sensors contain a matched infrared transmitter (LED) and infrared receiver (usually a [[Photodiodes and Phototransistors|phototransistor]]) pair. These devices work by measuring the amount of light that is reflected into the receiver. Because the receiver also responds to ambient light, the device works best when well shielded from abient light, and when the distance between the sensor and the reflective surface is small (the graph below shows how distance affects the output value). IR reflectance sensors are often used to detect white and black surfaces. White surfaces generally reflect well, while black surfaces reflect poorly.<br />
<br />
[[image:optoreflector distance.png|center]]<br />
<br />
==Application==<br />
<br />
In the mechatronics lab, we have the QRB1114 ([[media:QRB1114.pdf|datasheet]]) from [http://www.fairchild.com Fairchild], shown below. It has four pins, with the first pair connected to the LED and the second pair connected to the phototransistor.<br />
<br />
[[image:optoreflectors.png|center]]<br />
<br />
The circuit below can be used to detect objects directly in front of the QRB1114. The potentiometer must be used to adjust for ambient lighting conditions. The output is an analog signal like the one at the top of the page - dependent on distance. <br />
<br />
{| width=100%<br />
| [[image:qrb1114 circuit diagram.png]]<br />
| [[image:qrb1114 circuit photo.jpg]]<br />
|}<br />
<br />
There are two ways to process the output. 1) build extra circuitry using a schmidtt trigger or 555 timer to turn the output into a digital output. 2) Use an analog input and use a software threshold. The second way is easier and the program below can be used to adjust your thresholds and light sensitivity.<br />
<br />
[[image:qrb1114 xpc program.jpg|center]]</div>Stephenshttps://hades.mech.northwestern.edu//index.php?title=File:Qrb1114_xpc_program.jpg&diff=3840File:Qrb1114 xpc program.jpg2006-08-10T18:41:58Z<p>Stephens: </p>
<hr />
<div></div>Stephenshttps://hades.mech.northwestern.edu//index.php?title=Optoreflector&diff=3839Optoreflector2006-08-10T18:40:50Z<p>Stephens: /* Application */</p>
<hr />
<div>[[Category:Sensors]]<br />
Optoreflector sensors contain a matched infrared transmitter (LED) and infrared receiver (usually a [[Photodiodes and Phototransistors|phototransistor]]) pair. These devices work by measuring the amount of light that is reflected into the receiver. Because the receiver also responds to ambient light, the device works best when well shielded from abient light, and when the distance between the sensor and the reflective surface is small (the graph below shows how distance affects the output value). IR reflectance sensors are often used to detect white and black surfaces. White surfaces generally reflect well, while black surfaces reflect poorly.<br />
<br />
[[image:optoreflector distance.png|center]]<br />
<br />
==Application==<br />
<br />
In the mechatronics lab, we have the QRB1114 ([[media:QRB1114.pdf|datasheet]]) from [http://www.fairchild.com Fairchild], shown below. It has four pins, with the first pair connected to the LED and the second pair connected to the phototransistor.<br />
<br />
[[image:optoreflectors.png|center]]<br />
<br />
The circuit below can be used to detect objects directly in front of the QRB1114. The potentiometer must be used to adjust for ambient lighting conditions. The output is an analog signal like the one at the top of the page - dependent on distance. <br />
<br />
[[image:qrb1114 circuit diagram.jpg|center]]<br />
<br />
[[image:qrb1114 circuit photo.jpg|center]]<br />
<br />
There are two ways to process the output. 1) build extra circuitry using a schmidtt trigger or 555 timer to turn the output into a digital output. 2) Use an analog input and use a software threshold. The second way is easier and the program below can be used to adjust your thresholds and light sensitivity.<br />
<br />
[[image:qrb1114 xpc program.jpg|center]]</div>Stephenshttps://hades.mech.northwestern.edu//index.php?title=Optoreflector&diff=3837Optoreflector2006-08-10T18:36:54Z<p>Stephens: /* Application */</p>
<hr />
<div>[[Category:Sensors]]<br />
Optoreflector sensors contain a matched infrared transmitter (LED) and infrared receiver (usually a [[Photodiodes and Phototransistors|phototransistor]]) pair. These devices work by measuring the amount of light that is reflected into the receiver. Because the receiver also responds to ambient light, the device works best when well shielded from abient light, and when the distance between the sensor and the reflective surface is small (the graph below shows how distance affects the output value). IR reflectance sensors are often used to detect white and black surfaces. White surfaces generally reflect well, while black surfaces reflect poorly.<br />
<br />
[[image:optoreflector distance.png|center]]<br />
<br />
==Application==<br />
<br />
In the mechatronics lab, we have the QRB1114 ([[media:QRB1114.pdf|datasheet]]) from [http://www.fairchild.com Fairchild], shown below. It has four pins, with the first pair connected to the LED and the second pair connected to the phototransistor.<br />
<br />
[[image:optoreflectors.png|center]]<br />
<br />
The circuit below can be used to detect objects directly in front of the QRB1114. The potentiometer must be used to adjust for ambient lighting conditions.<br />
<br />
[[image:qrb1114 circuit diagram.jpg|center]]</div>Stephenshttps://hades.mech.northwestern.edu//index.php?title=Optoreflector&diff=3836Optoreflector2006-08-10T18:25:37Z<p>Stephens: /* Application */</p>
<hr />
<div>[[Category:Sensors]]<br />
Optoreflector sensors contain a matched infrared transmitter (LED) and infrared receiver (usually a [[Photodiodes and Phototransistors|phototransistor]]) pair. These devices work by measuring the amount of light that is reflected into the receiver. Because the receiver also responds to ambient light, the device works best when well shielded from abient light, and when the distance between the sensor and the reflective surface is small (the graph below shows how distance affects the output value). IR reflectance sensors are often used to detect white and black surfaces. White surfaces generally reflect well, while black surfaces reflect poorly.<br />
<br />
[[image:optoreflector distance.png|center]]<br />
<br />
==Application==<br />
<br />
In the mechatronics lab, we have the QRB1114 ([[media:QRB1114.pdf|datasheet]]) from [http://www.fairchild.com Fairchild], shown below. It has four pins, with the first pair connected to the LED and the second pair connected to the phototransistor.<br />
<br />
[[image:optoreflectors.png|center]]<br />
<br />
The circuit below can be used to detect objects directly in front of the QRB1114. The potentiometer must be used to adjust for ambient lighting conditions.</div>Stephenshttps://hades.mech.northwestern.edu//index.php?title=Optoreflector&diff=3835Optoreflector2006-08-10T17:18:32Z<p>Stephens: </p>
<hr />
<div>[[Category:Sensors]]<br />
Optoreflector sensors contain a matched infrared transmitter (LED) and infrared receiver (usually a [[Photodiodes and Phototransistors|phototransistor]]) pair. These devices work by measuring the amount of light that is reflected into the receiver. Because the receiver also responds to ambient light, the device works best when well shielded from abient light, and when the distance between the sensor and the reflective surface is small (the graph below shows how distance affects the output value). IR reflectance sensors are often used to detect white and black surfaces. White surfaces generally reflect well, while black surfaces reflect poorly.<br />
<br />
[[image:optoreflector distance.png|center]]<br />
<br />
==Application==<br />
<br />
In the mechatronics lab, we have the QRB1114 ([[media:QRB1114.pdf|datasheet]]) from [http://www.fairchild.com Fairchild], shown below. It has four pins, with the first pair connected to the LED and the second pair connected to the phototransistor.<br />
<br />
[[image:optoreflectors.png|center]]<br />
<br />
''Warning: If you make the sensor too sensitive, ambient light may be able to trigger it.''</div>Stephenshttps://hades.mech.northwestern.edu//index.php?title=Potentiometers&diff=3834Potentiometers2006-08-10T17:07:18Z<p>Stephens: /* Connecting the potentiometer to the PC/104 Stack */</p>
<hr />
<div>[[Category:Sensors]]<br />
Potentiometers (or pots) are variable resistors. They have three terminals with the center terminal being a center tap contact or "wiper" that slides across an element of constant resistance. As the wiper moves along the element, the resistance from the end terminals to the wiper changes. If the total resistance of the pot is <math>R</math> and the resistance from the left terminal to the wiper is <math>R_{left}</math> and from the right terminal to the wiper is <math>R_{right}</math>, then we have that <math>R = R_{left} + R_{right}</math> is always satisfied, and each of <math>R_{left}</math> and <math>R_{right}</math> can vary from 0 to <math>R</math>. Some rotary pots are "multi-turn," meaning that the knob must be turned several rotations to move the wiper its full range, and some are "single-turn." The former are common for fine gain adjustments on circuit boards, and the latter are common in sensors of shaft angle and knobs for human input. Some pots have a "linear taper," meaning that the resistance from the terminals to the wiper changes linearly with the amount of rotation (for a rotary pot) or translation (for a linear or slide pot), and others have a "logarithmic" or "audio taper," meaning that the amount of resistance changes logarithmically with the motion. This is useful for audio equipment, as our perception of sound volume increases linearly with a logarithmic increase in sound power. Make sure the pot you use has the correct kind of taper for your application! <br />
<br />
===Types of Pots===<br />
There are many different types of pots, though they usually have very subtle differences and can be hard to tell apart. Below are several common types of pots.<br />
<br />
[[image:POT types.png|center]]<br />
<br />
* '''Shaft Potentiometer''' - The most common type, also come in high-precision versions. The shaft can be turned by hand or attached to some device. Some of these cannot turn complete circles while others can turn all the way (continuous turn). Some are also made to turn around multiple times (multi-turn) to sweep the entire resistance range.<br />
<br />
* '''Trim Pots''' - These pots are commonly attached to circuit boards when it may be necessary to add tuning to a circuit. They are very small and may require a small screwdriver to turn.<br />
<br />
* '''Linear & Slide Pots''' - These pots move in a linear motion. Slide pots are used for user-controlled tuning and would be found in such devices such as light dimmers. Linear pots are made to be mounted onto a device to measure linear position.<br />
<br />
* '''Hollow-Shaft Pots''' - These are used in place of shaft potentiometers when space is limited. They are very thin (~3mm) and mount around a rotating shaft.<br />
<br />
===Applications===<br />
<br />
A rotary potentiometer can be used to measure the rotation of a shaft. It is easiest to use if the shaft being measured does not need to rotate continuously, but rather has a range of motion of less than 360 degrees. You can attach the pot to a shaft via gears. By using a gear ratio other than 1:1, you can adjust the range of motion and precision of your angular sensor.<br />
<br />
===Connecting the potentiometer to the PC/104 Stack===<br />
<br />
Use the circuit below to connect a potentiometer to the PC/104 stack. You can supply the potentiometer with any supply voltage, but remember that the PC/104 analog INs can only handle +/- 10V. The PC/104 won't read the exact voltage/resistance directly, because there is a 1k<math>\Omega</math> resistor in between the terminal and ADC (see [[PC104 I/O]]). In correct this, you can use a large resistance POT (if you have that freedom) or you can correct the error in software.<br />
<br />
[[image:POT to PC104 Circuit.png|center]]<br />
<br />
<br />
[[image:pot_pc104.jpg|600px|center]]<br />
<br />
==References==<br />
* http://www.potentiometers.com</div>Stephenshttps://hades.mech.northwestern.edu//index.php?title=File:Pot_pc104.jpg&diff=3833File:Pot pc104.jpg2006-08-10T16:58:16Z<p>Stephens: </p>
<hr />
<div></div>Stephenshttps://hades.mech.northwestern.edu//index.php?title=Mech:Privacy_policy&diff=3832Mech:Privacy policy2006-08-09T21:37:32Z<p>Stephens: </p>
<hr />
<div>Most of the files and images on this wiki are original and created here at Northwestern. However, some were borrowed under acceptable use guidelines and intended for purely educational purposes. If you wish to use some of our images, please contact administrators or consult the university's policies for such usage.</div>Stephenshttps://hades.mech.northwestern.edu//index.php?title=Mech:General_disclaimer&diff=3831Mech:General disclaimer2006-08-09T21:34:10Z<p>Stephens: </p>
<hr />
<div>The mechatronics wiki was created primarily by students for students. As such, none of the content is guaranteed to be 100% accurate. Please read your datasheets and instruction manuals carefully and consult your peers before attempting any high-power experiment.</div>Stephenshttps://hades.mech.northwestern.edu//index.php?title=Mech:About&diff=3830Mech:About2006-08-09T21:28:29Z<p>Stephens: </p>
<hr />
<div>Mechapedia was originally created by [mailto:benjamin.j.stephens@gmail.com Benjamin Stephens] (ME, Class of 2006), with significant content input from Mike Hwang (EECS, Class of 2008), for professors Kevin Lynch and Michael Peshkin in collaboration with colleagues in the [http://lims.mech.northwestern.edu Laboratory for Intelligent Mechanical Systems (LIMS)].</div>Stephenshttps://hades.mech.northwestern.edu//index.php?title=Mech:About&diff=3829Mech:About2006-08-09T21:28:07Z<p>Stephens: </p>
<hr />
<div>Mechapedia was originally created by Benjamin Stephens (ME, Class of 2006), with significant content input from Mike Hwang (EECS, Class of 2008), for professors Kevin Lynch and Michael Peshkin in collaboration with colleagues in the [http://lims.mech.northwestern.edu Laboratory for Intelligent Mechanical Systems (LIMS)].</div>Stephenshttps://hades.mech.northwestern.edu//index.php?title=User:Stephens&diff=3828User:Stephens2006-08-09T21:27:26Z<p>Stephens: </p>
<hr />
<div>Benjamin Stephens, Mechanical Engineering Class of 2006, created the mechatronics wiki in the spring/summer of 2006. He can now be contacted at [mailto:benjamin.j.stephens@gmail.com benjamin.j.stephens@gmail.com].</div>Stephenshttps://hades.mech.northwestern.edu//index.php?title=User:Stephens&diff=3827User:Stephens2006-08-09T21:26:54Z<p>Stephens: </p>
<hr />
<div>Benjamin Stephens, ME CO2006, created the mechatronics wiki in the spring/summer of 2006. He can now be contacted at [mailto:benjamin.j.stephens@gmail.com benjamin.j.stephens@gmail.com].</div>Stephenshttps://hades.mech.northwestern.edu//index.php?title=User:Stephens&diff=3826User:Stephens2006-08-09T21:26:46Z<p>Stephens: </p>
<hr />
<div>Benjamin Stephens, ME CO2006, created the mechatronics wiki in the spring/summer of 2006. He can now be contacted at [mailto:benjamin.j.stephens@gmail.com|benjamin.j.stephens@gmail.com].</div>Stephenshttps://hades.mech.northwestern.edu//index.php?title=User:Stephens&diff=3825User:Stephens2006-08-09T21:26:30Z<p>Stephens: </p>
<hr />
<div>Benjamin Stephens, ME CO2006, created the mechatronics wiki in the spring/summer of 2006. He can now be contacted at [mailto:benjamin.j.stephens@gmail.com].</div>Stephenshttps://hades.mech.northwestern.edu//index.php?title=User:Stephens&diff=3824User:Stephens2006-08-09T21:26:20Z<p>Stephens: </p>
<hr />
<div>Benjamin Stephens, ME CO2006, created the mechatronics wiki in the spring/summer of 2006. He can now be contacted at [benjamin.j.stephens@gmail.com].</div>Stephenshttps://hades.mech.northwestern.edu//index.php?title=User:Stephens&diff=3823User:Stephens2006-08-09T21:26:10Z<p>Stephens: </p>
<hr />
<div>Benjamin Stephens, ME CO2006, created the mechatronics wiki in the spring/summer of 2006. He can now be contacted at benjamin.j.stephens@gmail.com.</div>Stephenshttps://hades.mech.northwestern.edu//index.php?title=MediaWiki:Sidebar&diff=3822MediaWiki:Sidebar2006-08-09T21:23:41Z<p>Stephens: </p>
<hr />
<div>* navigation<br />
** mainpage|mainpage<br />
<!--** portal-url|portal--><br />
<!--** currentevents-url|currentevents--><br />
** recentchanges-url|recentchanges<br />
<!--** randompage-url|randompage--><br />
** helppage|help<br />
** Lab Inventory|Lab Inventory<br />
** Special:Imagelist|File List<br />
<!--** sitesupport-url|sitesupport--></div>Stephenshttps://hades.mech.northwestern.edu//index.php?title=Help:Edit_Navigation_Menu&diff=3821Help:Edit Navigation Menu2006-08-09T21:22:18Z<p>Stephens: </p>
<hr />
<div>To edit the "navigation" menu that is shown on every page to the left:<br />
<br />
* Goto [[Mediawiki:Sidebar]]<br />
<br />
* Edit the page<br />
<br />
* To add a new entry:<br />
<br />
:* Start a new line<br />
:* Type " <nowiki>**</nowiki> link | text " (you do not need brackets for the link)</div>Stephenshttps://hades.mech.northwestern.edu//index.php?title=Help:Edit_Navigation_Menu&diff=3820Help:Edit Navigation Menu2006-08-09T21:22:07Z<p>Stephens: </p>
<hr />
<div>To edit the "navigation" menu that is shown on every page to the left:<br />
<br />
* Goto [[Mediawiki:Sidebar]]<br />
<br />
* Edit the page<br />
<br />
* To add a new entry:<br />
<br />
;* Start a new line<br />
;* Type " <nowiki>**</nowiki> link | text " (you do not need brackets for the link)</div>Stephenshttps://hades.mech.northwestern.edu//index.php?title=Help:Edit_Navigation_Menu&diff=3819Help:Edit Navigation Menu2006-08-09T21:21:56Z<p>Stephens: </p>
<hr />
<div>To edit the "navigation" menu that is shown on every page to the left:<br />
<br />
* Goto [[Mediawiki:Sidebar]]<br />
<br />
* Edit the page<br />
<br />
* To add a new entry:<br />
:*<br />
** Start a new line<br />
** Type " <nowiki>**</nowiki> link | text " (you do not need brackets for the link)</div>Stephenshttps://hades.mech.northwestern.edu//index.php?title=Help:Edit_Navigation_Menu&diff=3818Help:Edit Navigation Menu2006-08-09T21:21:28Z<p>Stephens: </p>
<hr />
<div>To edit the "navigation" menu that is shown on every page to the left:<br />
<br />
* Goto [[Mediawiki:Sidebar]]<br />
<br />
* Edit the page<br />
<br />
* To add a new entry:<br />
<br />
** Start a new line<br />
** Type " <nowiki>**</nowiki> link | text " (you do not need brackets for the link)</div>Stephenshttps://hades.mech.northwestern.edu//index.php?title=Help:Edit_Navigation_Menu&diff=3817Help:Edit Navigation Menu2006-08-09T21:21:07Z<p>Stephens: </p>
<hr />
<div>To edit the "navigation" menu that is shown on every page to the left:<br />
<br />
* Goto [[Mediawiki:Sidebar]]<br />
<br />
* Edit the page<br />
<br />
* To add a new entry:<br />
<br />
** Start a new line<br />
** Type "<nowiki>**</nowiki> link | text" (you do not need brackets for the link)</div>Stephenshttps://hades.mech.northwestern.edu//index.php?title=Help:Contents&diff=3816Help:Contents2006-08-09T21:18:17Z<p>Stephens: </p>
<hr />
<div>__NOTOC__<br />
This page is a general repository of help specific to the Mechatronics Wiki. Please help eachother out by <br />
adding to this page.<br />
<br />
==HOWTO==<br />
This HOWTO section provides quick answers to specific problems. It is also serves as the documentation on running and maintaining this wiki.<br />
<br />
===Wiki===<br />
*[[Help:Wiki Backup|How to backup the wiki]]<br />
*[[Help:Editing|How to edit the wiki]]<br />
*[[Help:Creating A New User|How to create a new user]]<br />
*[[Help:Delete User|How to delete a user]]<br />
*[[Help:Upload File Extensions|How to add a new file extension to upload]]<br />
*[[Help:Upgrade|How to upgrade the wiki]]<br />
*[[Help:Edit Navigation Menu|How to edit the navigation menu]]<br />
<br />
===xPC===<br />
* Please add<br />
<br />
==FAQ==<br />
This Frequently Asked Questions list should serve as a first response location for general problems. If there is a simple problem that students continue to encounter, post it and its solution here and hopefully they can find the answer here the next time.<br />
<br />
===Wiki===<br />
<br />
<br />
===xPC===<br />
* Q: When I build my program in xPC, it completes successfully but doesn't download to the target PC<br />
<br />
Your host is probably set up for StandAlone mode. Open xpcexplr and change to DOSLoader in the Configuration menu.<br />
<br />
<br />
* Q: I am getting an incompatible version error when I try to build and download my xPC program.<br />
<br />
You need to update your CompactFlash disk to the new version of MATLAB you are using. Follow the instructions in [[Creating an xPC Flash Boot Disk]].</div>Stephenshttps://hades.mech.northwestern.edu//index.php?title=MediaWiki:Sidebar&diff=3815MediaWiki:Sidebar2006-08-09T21:16:42Z<p>Stephens: </p>
<hr />
<div>* navigation<br />
** mainpage|mainpage<br />
<!--** portal-url|portal--><br />
<!--** currentevents-url|currentevents--><br />
** recentchanges-url|recentchanges<br />
** randompage-url|randompage<br />
** helppage|help<br />
** Lab Inventory|Lab Inventory<br />
** Special:Imagelist|File List<br />
<!--** sitesupport-url|sitesupport--></div>Stephenshttps://hades.mech.northwestern.edu//index.php?title=Help:Contents&diff=3814Help:Contents2006-08-09T21:15:53Z<p>Stephens: </p>
<hr />
<div>__NOTOC__<br />
This page is a general repository of help specific to the Mechatronics Wiki. Please help eachother out by <br />
adding to this page.<br />
<br />
==HOWTO==<br />
This HOWTO section provides quick answers to specific problems. It is also serves as the documentation on running and maintaining this wiki.<br />
<br />
===Wiki===<br />
*[[Help:Wiki Backup|How to backup the wiki]]<br />
*[[Help:Editing|How to edit the wiki]]<br />
*[[Help:Creating A New User|How to create a new user]]<br />
*[[Help:Delete User|How to delete a user]]<br />
*[[Help:Upload File Extensions|How to add a new file extension to upload]]<br />
*[[Help:Upgrade|How to upgrade the wiki]]<br />
<br />
===xPC===<br />
* Please add<br />
<br />
==FAQ==<br />
This Frequently Asked Questions list should serve as a first response location for general problems. If there is a simple problem that students continue to encounter, post it and its solution here and hopefully they can find the answer here the next time.<br />
<br />
===Wiki===<br />
<br />
<br />
===xPC===<br />
* Q: When I build my program in xPC, it completes successfully but doesn't download to the target PC<br />
<br />
Your host is probably set up for StandAlone mode. Open xpcexplr and change to DOSLoader in the Configuration menu.<br />
<br />
<br />
* Q: I am getting an incompatible version error when I try to build and download my xPC program.<br />
<br />
You need to update your CompactFlash disk to the new version of MATLAB you are using. Follow the instructions in [[Creating an xPC Flash Boot Disk]].</div>Stephenshttps://hades.mech.northwestern.edu//index.php?title=Help:Contents&diff=3813Help:Contents2006-08-09T21:10:51Z<p>Stephens: /* Wiki */</p>
<hr />
<div>__NOTOC__<br />
This page is a general repository of help specific to the Mechatronics Wiki. Please help eachother out by <br />
adding to this page.<br />
<br />
==HOWTO==<br />
This HOWTO section provides quick answers to specific problems. It is also serves as the documentation on running and maintaining this wiki.<br />
<br />
===Wiki===<br />
*[[Help:Wiki Backup|How to backup the wiki]]<br />
*[[Help:Editing|How to edit the wiki]]<br />
*[[Help:Creating A New User|How to create a new user]]<br />
*[[Help:Delete User|How to delete a user]]<br />
*[[Help:Upload File Extensions|How to add a new file extension to upload]]<br />
*[[Help:Upgrade|How to upgrade the wiki]]<br />
*[[Help:Find Image|How to search for an image]]<br />
<br />
===xPC===<br />
* Please add<br />
<br />
==FAQ==<br />
This Frequently Asked Questions list should serve as a first response location for general problems. If there is a simple problem that students continue to encounter, post it and its solution here and hopefully they can find the answer here the next time.<br />
<br />
===Wiki===<br />
<br />
<br />
===xPC===<br />
* Q: When I build my program in xPC, it completes successfully but doesn't download to the target PC<br />
<br />
Your host is probably set up for StandAlone mode. Open xpcexplr and change to DOSLoader in the Configuration menu.<br />
<br />
<br />
* Q: I am getting an incompatible version error when I try to build and download my xPC program.<br />
<br />
You need to update your CompactFlash disk to the new version of MATLAB you are using. Follow the instructions in [[Creating an xPC Flash Boot Disk]].</div>Stephenshttps://hades.mech.northwestern.edu//index.php?title=Stepper_Motor_Circuits&diff=3812Stepper Motor Circuits2006-08-09T18:28:49Z<p>Stephens: /* L297 */</p>
<hr />
<div>[[Category:Actuators]]<br />
<br />
==Basics==<br />
To control a stepper motor, you have to energize each winding individually in a specific and timed order. The energizing is accomplished by a driver circuit (an amplifier). The timing is performed by an indexer circuit and the objective (go forward, go backward, brake, coast, etc.) is controlled by some external user interface, such as a computer or joystick. The figure below shows this process.<br />
<br />
[[image:stepper motor block diagram.jpg|500px|center]]<br />
<br />
<br />
==Drivers==<br />
The circuits for driving unipolar and bipolar stepper motors differ because bipolar stepper motors don't have a "center tap." However, it is possible to use bipolar drivers to drive unipolar steppers after some small modifications.<br />
<br />
Care must be taken in the driver circuit to protect against voltage spikes. Because the motor windings are inductors, switching off the power to the winding produces a short burst of voltage. To protect against this, always put a diode in parallel with the winding, making sure the diode can handle the winding current. This is shown in the following figure.<br />
<br />
[[image:winding diagram.jpg|200px|center]]<br />
<br />
===Unipolar Stepper Driver Circuit===<br />
<br />
The basic drive circuitry for a single unipolar winding is shown in the following figure.<br />
<br />
[[image:unipolar driver digram.jpg|300px|center]]<br />
<br />
For the switches, any kind of switching technology can be used. The following figure shows two such switches. The first one uses a power darlington transistor and the second one uses a power field effect transistor.<br />
<br />
[[image:unipolar switch circuits.jpg|center]]<br />
<br />
For driving a full stepper motor, with multiple coils, you can either build each of the above circuits individually, or you can use a integrated chip. One such chip is the [[media:DS2003.pdf|DS2003]], which is a darlington array, and is shown below. This chip can be used when the total current to each winding is less than 500 milliamps.<br />
<br />
[[image:ds2003.png|center|300px]]<br />
<br />
===Bipolar Stepper Driver Circuit===<br />
<br />
Bipolar stepper drivers use H-bridges to energize the windings of the motor. H-bridges allow you to chose the direction of the current through the winding. Using an H-bridge configuration, there are four transistors for each winding as shown in the first figure below. However, most of the time they are prewired together so that only two inputs are needed. This makes generating pulses easier and also serves to protect against short circuits. This circuit is shown in the second figure below.<br />
<br />
{| align="center"<br />
|-<br />
| [[image:bipolar4input.png|280px]]<br />
| [[image:bipolar2input.png]]<br />
|}<br />
<br />
The table below shows the result of each possible control input.<br />
<br />
{| border="1" align="center"<br />
! XY !! ABCD !! Mode<br />
|-<br />
| 00 || 0000 || coast<br />
|-<br />
| 01 || 1001 || forward<br />
|-<br />
| 10 || 0110 || reverse<br />
|-<br />
| 11 || 1111 || brake<br />
|}<br />
<br />
You should be able to drive a bipolar motor with a unipolar motor circuit. The only difference is that there are no center winding taps to connect to the power source. Somebody correct me?<br />
<br />
==Indexing==<br />
<br />
There are many methods of producing the index pulses needed to drive stepper motors. This can either be done using a microprocessor or an integrated circuit. The calculations will most likely be so burdensome that the microprocessor would be unable to do any other calculations while producing the pulse trains. However, there are many cheap microcontrollers available these days and they could be used as dedicated indexers.<br />
<br />
Most indexers have similar inputs and are intended to control the speed and direction of the motor. The logic diagram shows how this is accomplished.<br />
<br />
[[image:indexer.png|center]]<br />
<br />
===L297=== <br />
'''Digikey Part #: 497-1394-5-ND'''<br />
<br />
The [[media:L297.pdf|L297]] is a 20-pin DIP chip that was designed specifically to control either unipolar or bipolar stepper motors. It will control two H-bridges to power two windings. Its inputs control the speed and direction of the motor. The diagram below shows the typical setup of the circuit. The A and B outputs would correspond to the X and Y inputs on the H-bridge of the first winding (see above). Likewise, the C and D outputs would correspond to the X and Y inputs on the second winding.<br />
<br />
[[image:l297.png|center]]<br />
<br />
This chip was specifically designed to interface with the L298N stepper motor driver chip, which is also found in the lab. [[media:L297 and L298.pdf|See this document]].<br />
<br />
===[[PIC16F684]]===<br />
<br />
The PIC16F684, which is available in the lab, is a good programmable microcontroller ideally suited for controlling stepper motors.<br />
<br />
[[media:PIC Stepper Control.pdf|Read this document]]<br />
<br />
==Integrated Circuits==<br />
<br />
===MC3479===<br />
<br />
'''Allied Electronics Part #: 568-9170'''<br />
<br />
The MC3479 is a single-chip stepper motor driver that can handle 350mA per winding. There are several high-level digital inputs that control the speed and direction of the motor. The first figure below shows the internal circuitry and the second picture shows a typical setup.<br />
<br />
{| align="center"<br />
|-<br />
| [[image:mc3479.png|center]]<br />
|-<br />
| [[image:mc3479 circuit.png|center]]<br />
|}<br />
<br />
==References==<br />
* "Stepper Motor Basics", http://www.ams2000.com/pdf/step101.pdf<br />
* "Jones on Stepping Motor Control Circuits", http://www.cs.uiowa.edu/~jones/step/circuits.html<br />
* MC3479, http://www.onsemi.com/pub/Collateral/MC3479-D.PDF<br />
* L297, http://www.st.com/stonline/books/pdf/docs/1334.pdf</div>Stephenshttps://hades.mech.northwestern.edu//index.php?title=Stepper_Motor_Circuits&diff=3811Stepper Motor Circuits2006-08-09T18:28:19Z<p>Stephens: /* Bipolar Stepper Driver Circuit */</p>
<hr />
<div>[[Category:Actuators]]<br />
<br />
==Basics==<br />
To control a stepper motor, you have to energize each winding individually in a specific and timed order. The energizing is accomplished by a driver circuit (an amplifier). The timing is performed by an indexer circuit and the objective (go forward, go backward, brake, coast, etc.) is controlled by some external user interface, such as a computer or joystick. The figure below shows this process.<br />
<br />
[[image:stepper motor block diagram.jpg|500px|center]]<br />
<br />
<br />
==Drivers==<br />
The circuits for driving unipolar and bipolar stepper motors differ because bipolar stepper motors don't have a "center tap." However, it is possible to use bipolar drivers to drive unipolar steppers after some small modifications.<br />
<br />
Care must be taken in the driver circuit to protect against voltage spikes. Because the motor windings are inductors, switching off the power to the winding produces a short burst of voltage. To protect against this, always put a diode in parallel with the winding, making sure the diode can handle the winding current. This is shown in the following figure.<br />
<br />
[[image:winding diagram.jpg|200px|center]]<br />
<br />
===Unipolar Stepper Driver Circuit===<br />
<br />
The basic drive circuitry for a single unipolar winding is shown in the following figure.<br />
<br />
[[image:unipolar driver digram.jpg|300px|center]]<br />
<br />
For the switches, any kind of switching technology can be used. The following figure shows two such switches. The first one uses a power darlington transistor and the second one uses a power field effect transistor.<br />
<br />
[[image:unipolar switch circuits.jpg|center]]<br />
<br />
For driving a full stepper motor, with multiple coils, you can either build each of the above circuits individually, or you can use a integrated chip. One such chip is the [[media:DS2003.pdf|DS2003]], which is a darlington array, and is shown below. This chip can be used when the total current to each winding is less than 500 milliamps.<br />
<br />
[[image:ds2003.png|center|300px]]<br />
<br />
===Bipolar Stepper Driver Circuit===<br />
<br />
Bipolar stepper drivers use H-bridges to energize the windings of the motor. H-bridges allow you to chose the direction of the current through the winding. Using an H-bridge configuration, there are four transistors for each winding as shown in the first figure below. However, most of the time they are prewired together so that only two inputs are needed. This makes generating pulses easier and also serves to protect against short circuits. This circuit is shown in the second figure below.<br />
<br />
{| align="center"<br />
|-<br />
| [[image:bipolar4input.png|280px]]<br />
| [[image:bipolar2input.png]]<br />
|}<br />
<br />
The table below shows the result of each possible control input.<br />
<br />
{| border="1" align="center"<br />
! XY !! ABCD !! Mode<br />
|-<br />
| 00 || 0000 || coast<br />
|-<br />
| 01 || 1001 || forward<br />
|-<br />
| 10 || 0110 || reverse<br />
|-<br />
| 11 || 1111 || brake<br />
|}<br />
<br />
You should be able to drive a bipolar motor with a unipolar motor circuit. The only difference is that there are no center winding taps to connect to the power source. Somebody correct me?<br />
<br />
==Indexing==<br />
<br />
There are many methods of producing the index pulses needed to drive stepper motors. This can either be done using a microprocessor or an integrated circuit. The calculations will most likely be so burdensome that the microprocessor would be unable to do any other calculations while producing the pulse trains. However, there are many cheap microcontrollers available these days and they could be used as dedicated indexers.<br />
<br />
Most indexers have similar inputs and are intended to control the speed and direction of the motor. The logic diagram shows how this is accomplished.<br />
<br />
[[image:indexer.png|center]]<br />
<br />
===L297=== <br />
'''Digikey Part #: 497-1394-5-ND'''<br />
<br />
The L297 is a 20-pin DIP chip that was designed specifically to control either unipolar or bipolar stepper motors. It will control two H-bridges to power two windings. Its inputs control the speed and direction of the motor. The diagram below shows the typical setup of the circuit. The A and B outputs would correspond to the X and Y inputs on the H-bridge of the first winding (see above). Likewise, the C and D outputs would correspond to the X and Y inputs on the second winding.<br />
<br />
[[image:l297.png|center]]<br />
<br />
This chip was specifically designed to interface with the L298N stepper motor driver chip, which is also found in the lab. [[media:L297 and L298.pdf|See this document]].<br />
<br />
===[[PIC16F684]]===<br />
<br />
The PIC16F684, which is available in the lab, is a good programmable microcontroller ideally suited for controlling stepper motors.<br />
<br />
[[media:PIC Stepper Control.pdf|Read this document]]<br />
<br />
==Integrated Circuits==<br />
<br />
===MC3479===<br />
<br />
'''Allied Electronics Part #: 568-9170'''<br />
<br />
The MC3479 is a single-chip stepper motor driver that can handle 350mA per winding. There are several high-level digital inputs that control the speed and direction of the motor. The first figure below shows the internal circuitry and the second picture shows a typical setup.<br />
<br />
{| align="center"<br />
|-<br />
| [[image:mc3479.png|center]]<br />
|-<br />
| [[image:mc3479 circuit.png|center]]<br />
|}<br />
<br />
==References==<br />
* "Stepper Motor Basics", http://www.ams2000.com/pdf/step101.pdf<br />
* "Jones on Stepping Motor Control Circuits", http://www.cs.uiowa.edu/~jones/step/circuits.html<br />
* MC3479, http://www.onsemi.com/pub/Collateral/MC3479-D.PDF<br />
* L297, http://www.st.com/stonline/books/pdf/docs/1334.pdf</div>Stephenshttps://hades.mech.northwestern.edu//index.php?title=File:Unipolar_stepper_driver_circuit.ckt&diff=3808File:Unipolar stepper driver circuit.ckt2006-08-09T18:12:08Z<p>Stephens: </p>
<hr />
<div></div>Stephenshttps://hades.mech.northwestern.edu//index.php?title=Main_Page&diff=3807Main Page2006-08-09T18:05:32Z<p>Stephens: </p>
<hr />
<div>The mechatronics design wiki provides reference material on the theory and applications of electronics, sensors, actuators, etc., for use in mechatronics-related research and projects. Practical applications often refer to equipment and supplies available in the Northwestern Mechatronics Design Lab.<br />
<br />
__TOC__<br />
<br />
<h3>Electronics</h3><br />
<br />
*Analog<br />
**[[Basic Linear Circuits Review]]<br />
***[[Resistors (Ohm's Law), Capacitors, and Inductors]]<br />
***[[Kirchhoff's Current and Voltage Laws]]<br />
***[[Voltage and Current Dividers]]<br />
***[[RC and RL Exponential Responses]]<br />
***[[Passive Filters]]<br />
**[[Semiconductors]]<br />
***[[Diodes and Transistors]]<br />
***[[Operational Amplifiers (Op-Amps)]]<br />
**[[Instrumentation Amps]]<br />
***[[NU printed circuit board for instrumentation amps]]<br />
<br />
*[[Digital]]<br />
**[[Logic Gates]]<br />
**[[Flip-Flops and Latches]]<br />
**[[555 Timer]]<br />
**[[Schmitt Trigger]]<br />
<br />
*[[Integrated Circuits]]<br />
<br />
*Practical Considerations in Electrical Design<br />
**[[Shielding, Grounding, Noise Suppression, etc.]]<br />
**[[Conductors: stranded, solid, ribbon cable, coax, twisted pairs, wire gauge (thickness)]]<br />
**[[Switch Debouncing]]<br />
<br />
*Electrical Equipment and Software<br />
**Power Supplies, Voltage Regulation, and Batteries<br />
**[[Using Circuitmaker]]<br />
<br />
*Microcontrollers<br />
**[[PIC Microcontroller]]<br />
**[[Basic Stamp]]<br />
**Handyboard<br />
<br clear=all/><br />
<br />
<h3>[[:Category:Sensors|Sensors]]</h3><br />
<br />
* [[Potentiometers|Angle, Linear Position: Potentiometers]]<br />
* [[Optointerrupter|Beam Breaker: Optointerrupter]]<br />
* [[Optoreflector|Proximity: Optoreflector]]<br />
* [[Reed Switch|Proximity: Reed Switch]]<br />
* [[Hall Effect Sensor|Proximity, Angle: Hall Effect Sensor]]<br />
* [[Rotary Encoder|Angle: Rotary Encoder]]<br />
* Angular Velocity: Tachometer<br />
* [[Photodiodes and Phototransistors|Light: Photodiodes and Phototransistors]]<br />
* [[Photocell|Ambient Light: Photocell]]<br />
* [[Thermistor|Temperature: Thermistor]]<br />
* Temperature: Thermotransistor IC<br />
* Audio: Microphone<br />
* [[Accelerometer|Tilt, Acceleration: Accelerometer]]<br />
* [[Strain Gauge|Force: Strain Gauge]]<br />
* Current: Current Sense Resistor<br />
* [[Limit Switch|Contact: Microswitch (Limit Switch)]]<br />
<br clear=all/><br />
<br />
<h3>[[:Category:Actuators|Actuators]]</h3><br />
[[image:All-actuators-captions-small.jpg|thumb|300px|[[Actuators Available in the Mechatronics Lab|Available Actuators]]]]<br />
* [[Brushed DC Motor Theory|Brushed DC Motors]]<br />
** [[Linear Amplifier Motor Driver|Driving Using a Linear Amplifier]]<br />
** [[Pulse Width Modulation|Driving Using Pulse Width Modulation]]<br />
** [[PIC PWM Motor Driver]]<br />
* [[Brushless DC Motors]]<br />
** [[Driving Brushless DC Motors]]<br />
* [[Stepper Motor Theory|Stepper Motors]]<br />
** [[Stepper Motor Circuits|Driving Stepper Motors]]<br />
** [[Unipolar Stepper Motor Driver Circuit]]<br />
** [[Bipolar Stepper Motor Driver Circuit]]<br />
* [[RC Servo Theory|RC Servos]]<br />
** [[555 Servo Circuit|Driving Your Servo Using a 555 Timer]]<br />
* [[Solenoid Theory|Solenoids]]<br />
** Practice: Driving Your Solenoid<br />
* AC Motors<br />
** [[Using the Yaskawa Motors]]<br />
* [[Actuators Available in the Mechatronics Lab]]<br />
<br clear=all/><br />
<br />
<h3>Mechanical Design</h3><br />
*Mechanics of Materials<br />
**Beam Mechanics<br />
**[[Mohr's Circle]]<br />
*Failure Theories<br />
**Static Loading<br />
**Variable Loading and Fatigue<br />
*Fastening<br />
**Nuts and Bolts<br />
**Keys and Keyways<br />
**Press-fits<br />
**Set Screws<br />
*Support<br />
**Housings<br />
**Shafts<br />
**[[Bearings]]<br />
*Transmission<br />
**Rigid: [[Gears]]<br />
**Flexible: Belts, Chains<br />
**Motion Connection/Separation: Clutches, Brakes, Couplings<br />
*Linkages<br />
**Serial Chains<br />
**Parallel and Closed-Loop Chains<br />
*Other: springs/dampers, cams, etc.<br />
<br />
<br clear=all/><br />
<br />
<h3>The PC/104 Stack</h3><br />
[[Image:Img0174.jpg|thumb|300px|[[PC104 Overview|The PC104 Stack]]]]<br />
* [[PC104 Overview|Overview]]<br />
* [[The PC/104 Lab Kit]]<br />
* Hardware:<br />
** [[Advantech CPU Card]]<br />
** [[Sensoray 526 Data Aquisition Card]]<br />
** [[PC104 Break Out Board|Break-Out-Board (a.k.a. BoB)]]<br />
** [[PC104 Power|Power Components]]<br />
** [[PC104 I/O|I/O Electronics: Analog I/O, Digital I/O, Encoder Connections]]<br />
* Advanced: Creating a Working Stack from Parts<br />
** [[Building the Breakout Board]]<br />
** [[Breakout Board Ribbon Cables]]<br />
** [[Assembling the PC104 Stack]]<br />
** '''[[Creating an xPC Flash Boot Disk]]''' <- when new version of MATLAB<br />
* Custom Boards<br />
** Dual PWM Motor Controller<br />
** Dual Linear Amplifier Motor Controller<br />
<br clear=all/><br />
<br />
<h3>xPC Target Real-Time Operating System</h3><br />
<br />
* [[xPC Overview|Overview of Real-Time Programming with Simulink and xPC Target]]<br />
* [[Configuring xPC Target PC|Configuring xPC Host/Target PC]]<br />
* [[Creating a Simple xPC Program|'''Quickstart''':Creating a simple xPC Program]]<br />
* [[Common xPC Blocks|Commonly Used Blocks]]<br />
* [[Using the Host Scope]]<br />
*Advanced<br />
** Model Properties<br />
** [[XPC M-file Communication|M-file communication]]<br />
** Using outside of the lab<br />
** [[media:standalone.pdf|Standalone Mode]]<br />
** Stateflow<br />
* Code Examples<br />
** [[Controlling a DC Motor with an Encoder]]<br />
** Something With State Machine<br />
** [[Using RS-232 and Printing to LCD]]<br />
**[[UDP Communications between Target and Host PC]]<br />
** M-functions and S-functions<br />
** [[xPC Code From Student Projects]]<br />
<br clear=all/><br />
<br />
<h3>QNX Real-Time Operating System</h3><br />
*[[media:qnxtemplate.zip|QNX Control Program with Interrupts]]<br />
<br />
<br clear=all/><br />
<br />
<h3>Lab Supplies and Data Sheets</h3><br />
<br />
* [[Lab Inventory]]<br />
<br />
<br clear=all><br />
<br />
<h3>[[Vendors]]</h3><br />
<br />
<br clear=all><br />
<br />
<h3>Other Software</h3><br />
*[[List of Useful Software for Download]]<br />
*Circuit Schematics and PCB Layout<br />
*LaTex Document Preparation<br />
** [http://meta.wikimedia.org/wiki/Help:Formula Mathematical Formulae]<br />
** Document Formatting<br />
** [[LaTeX Software Setup|Software Setup]]<br />
** IEEE Styles<br />
<br />
<br clear=all><br />
<br />
<h3>[[Other Lab Equipment]]</h3><br />
* Prototyping Tools<br />
** [[Tektronix TDS220 Oscilloscope]]<br />
** [[Tektronix CFG253 Function Generator]]<br />
** [[media:Mastech_power_supply_manual.pdf|Mastech Power Supply]]<br />
** Fluke III Multimeter<br />
** Benchtop Multimeter<br />
** Powered Breadboard<br />
** Soldering Iron<br />
* [http://ediacaran.mech.northwestern.edu/neuromech/index.php/Lab_Equipment High Performance Neuromechatronics Benches]<br />
* The Sensoray 626 DAQ Card<br />
<br />
<br clear=all><br />
<br />
<h3>Course Material</h3><br />
* [[ME 224 Experimental Engineering]]<br />
* [[ME 333 Introduction to Mechatronics]]<br />
* [[ME 433 Advanced Mechatronics]]</div>Stephenshttps://hades.mech.northwestern.edu//index.php?title=The_PC/104_Lab_Kit&diff=3806The PC/104 Lab Kit2006-08-09T18:00:36Z<p>Stephens: /* Known Problems with the Kits */</p>
<hr />
<div>__TOC__<br />
==Kit Contents==<br />
*PC104 stack [[Image:PC104_stack.jpg|200 px]][[Image:PC104_ports.jpg|200 px]]<br />
*AC adapter for PC104 stack [[Image:PC104_stack_adapter.jpg|200 px]]<br />
*Breadboard (large) [[Image:breadboard_large.jpg|200 px]] (IC chips not included)<br />
*Breadboard (small) [[Image:breadboard_small.jpg|200 px]]<br />
*AC adapter for large breadboard [[Image:breadboard_ac_adapter.jpg|200 px]][[Image:5pin_din.jpg|200 px]](DIN 5 connector)<br />
*Fluke Multimeter [[Image:fluke_multimeter.jpg|200 px]]<br />
*Battery pack [[Image:battery_pack.jpg|200 px]]<br />
*Battery pack charger [[Image:battery_pack_charger.jpg|200 px]]<br />
*VGA interface cable ([http://en.wikipedia.org/wiki/D-subminiature DE-15 connector]) [[Image:vga_interface_cable.jpg|200 px]][[Image:DE15.jpg|200 px]]<br />
*Ethernet interface cable (RJ-45 connector) [[Image:Ethernet_interface_cable.jpg|200 px]][[Image:RJ45.jpg|200 px]]<br />
<br />
'''Note: when plugging the interface cables into the PC104 CPU board, the red stripe on the cable should line up with the small white triangle printed next to the socket.'''<br />
<br />
[[Image:PC104_socket_triangle.jpg|200 px]]<br />
<br />
===Other equipment===<br />
*Serial port interface cable (DE-9 connector) [[Image:Serial_port_interface_cable.jpg|200 px]][[Image:DE9.jpg|200 px]]<br />
*Keyboard interface cable (PS-2 connector) [[Image:keyboard_interface_cable.jpg|200 px]]<br />
*Seetron BPI-216 LCD display [[Image:seetron_LCD.jpg|200 px]]<br />
*Ethernet straight-crossover converter [[Image:crossover_converter.jpg|200 px]]<br />
*8-inch LCD monitor [[Image:small_LCD_monitor.jpg|200 px]] (you probably won't be needing the driver if it came with one)<br />
<br />
==Known Problems with the Kits==<br />
*COM2 may not work properly with Simulink/XPC Target<br />
<br />
*Analog outputs inverted and not quite scaled 1:1 (5V commanded out is actually something like -4.5V) - [http://hades.mech.northwestern.edu/wiki/index.php?title=PC104_I/O#DAC read this]<br />
<br />
==Kit User Checkout==<br />
<br />
{| align="center" width="100%" border="1"<br />
! Kit # !! Owner !! Date Checked Out !! IP Address !! xPC Version !! Missing Parts !! Comments/Problems<br />
|-<br />
| 1 || || || 106 || 2.9 || ||<br />
|-<br />
| 2 || || || 108 || 2.9 || || DO 1-4 don't work<br />
|-<br />
| 3 || || || || || pc104! ||<br />
|-<br />
| 4 || Mike Hwang || || 105 || || ||<br />
|-<br />
| 5 || James Solberg || Spring 06 || 112 || 3.0 || ||<br />
|-<br />
| 6 || Malcom McIver || || || || ||<br />
|-<br />
| 7 || Alex Birdwell || 7/7/2006 || 107 || || ||<br />
|-<br />
| 8 || || || 111 || 2.9 || large Breadboard ||<br />
|-<br />
| 9 || || || 110 || 2.9 || ||<br />
|-<br />
| 10 || || || 104 || 2.9 || ||<br />
|-<br />
| 11 || || || 109 || 2.9 || Large Breadboard ||<br />
|-<br />
| 12 || || || 102 || 2.9 || Large Breadboard ||<br />
|-<br />
| 13 || Colgate || Winter 06 || 101 || || || haptic paddle/friction demo<br />
|-<br />
| 14 || Aimee || || 114 || || ||<br />
|-<br />
| 15 || || || 115 || 2.9 || all except pc104 || base of pc104 not attached<br />
|-<br />
| 16 || Laura Winfield || || 116 || || ||<br />
|-<br />
| 17 || || || 117 || 2.9 || all except pc104 ||<br />
|-<br />
| 18 || Weir/Colgate || Spring 06 || 118 || || ||<br />
|-<br />
| 19 || || || || || ||<br />
|-<br />
| 20 || David Weir || Winter 06 || 120 || 3.0 || || only checked out pc104, not black box or breadboard<br />
|-<br />
| 21 || || || || || || Encoder 1 pins broken<br />
|-<br />
| 22 || Ben Stephens || || 122 || 2.9 || box, all but pc104||<br />
|-<br />
| 23 || Unassembled || || || || ||</div>Stephenshttps://hades.mech.northwestern.edu//index.php?title=The_PC/104_Lab_Kit&diff=3805The PC/104 Lab Kit2006-08-09T18:00:10Z<p>Stephens: /* Known Problems with the Kits */</p>
<hr />
<div>__TOC__<br />
==Kit Contents==<br />
*PC104 stack [[Image:PC104_stack.jpg|200 px]][[Image:PC104_ports.jpg|200 px]]<br />
*AC adapter for PC104 stack [[Image:PC104_stack_adapter.jpg|200 px]]<br />
*Breadboard (large) [[Image:breadboard_large.jpg|200 px]] (IC chips not included)<br />
*Breadboard (small) [[Image:breadboard_small.jpg|200 px]]<br />
*AC adapter for large breadboard [[Image:breadboard_ac_adapter.jpg|200 px]][[Image:5pin_din.jpg|200 px]](DIN 5 connector)<br />
*Fluke Multimeter [[Image:fluke_multimeter.jpg|200 px]]<br />
*Battery pack [[Image:battery_pack.jpg|200 px]]<br />
*Battery pack charger [[Image:battery_pack_charger.jpg|200 px]]<br />
*VGA interface cable ([http://en.wikipedia.org/wiki/D-subminiature DE-15 connector]) [[Image:vga_interface_cable.jpg|200 px]][[Image:DE15.jpg|200 px]]<br />
*Ethernet interface cable (RJ-45 connector) [[Image:Ethernet_interface_cable.jpg|200 px]][[Image:RJ45.jpg|200 px]]<br />
<br />
'''Note: when plugging the interface cables into the PC104 CPU board, the red stripe on the cable should line up with the small white triangle printed next to the socket.'''<br />
<br />
[[Image:PC104_socket_triangle.jpg|200 px]]<br />
<br />
===Other equipment===<br />
*Serial port interface cable (DE-9 connector) [[Image:Serial_port_interface_cable.jpg|200 px]][[Image:DE9.jpg|200 px]]<br />
*Keyboard interface cable (PS-2 connector) [[Image:keyboard_interface_cable.jpg|200 px]]<br />
*Seetron BPI-216 LCD display [[Image:seetron_LCD.jpg|200 px]]<br />
*Ethernet straight-crossover converter [[Image:crossover_converter.jpg|200 px]]<br />
*8-inch LCD monitor [[Image:small_LCD_monitor.jpg|200 px]] (you probably won't be needing the driver if it came with one)<br />
<br />
==Known Problems with the Kits==<br />
*COM2 may not work properly with Simulink/XPC Target<br />
<br />
*Analog outputs inverted and not quite scaled 1:1 (5V commanded out is actually something like -4.5V) - [http://hades.mech.northwestern.edu/wiki/index.php?title=PC104_I/O#DAC see note]<br />
<br />
==Kit User Checkout==<br />
<br />
{| align="center" width="100%" border="1"<br />
! Kit # !! Owner !! Date Checked Out !! IP Address !! xPC Version !! Missing Parts !! Comments/Problems<br />
|-<br />
| 1 || || || 106 || 2.9 || ||<br />
|-<br />
| 2 || || || 108 || 2.9 || || DO 1-4 don't work<br />
|-<br />
| 3 || || || || || pc104! ||<br />
|-<br />
| 4 || Mike Hwang || || 105 || || ||<br />
|-<br />
| 5 || James Solberg || Spring 06 || 112 || 3.0 || ||<br />
|-<br />
| 6 || Malcom McIver || || || || ||<br />
|-<br />
| 7 || Alex Birdwell || 7/7/2006 || 107 || || ||<br />
|-<br />
| 8 || || || 111 || 2.9 || large Breadboard ||<br />
|-<br />
| 9 || || || 110 || 2.9 || ||<br />
|-<br />
| 10 || || || 104 || 2.9 || ||<br />
|-<br />
| 11 || || || 109 || 2.9 || Large Breadboard ||<br />
|-<br />
| 12 || || || 102 || 2.9 || Large Breadboard ||<br />
|-<br />
| 13 || Colgate || Winter 06 || 101 || || || haptic paddle/friction demo<br />
|-<br />
| 14 || Aimee || || 114 || || ||<br />
|-<br />
| 15 || || || 115 || 2.9 || all except pc104 || base of pc104 not attached<br />
|-<br />
| 16 || Laura Winfield || || 116 || || ||<br />
|-<br />
| 17 || || || 117 || 2.9 || all except pc104 ||<br />
|-<br />
| 18 || Weir/Colgate || Spring 06 || 118 || || ||<br />
|-<br />
| 19 || || || || || ||<br />
|-<br />
| 20 || David Weir || Winter 06 || 120 || 3.0 || || only checked out pc104, not black box or breadboard<br />
|-<br />
| 21 || || || || || || Encoder 1 pins broken<br />
|-<br />
| 22 || Ben Stephens || || 122 || 2.9 || box, all but pc104||<br />
|-<br />
| 23 || Unassembled || || || || ||</div>Stephens