Difference between revisions of "Main Page"

From Mech
Jump to navigationJump to search
(by Greg McGlynn)
 
(67 intermediate revisions by 8 users not shown)
Line 1: Line 1:
[[Image:mechlab.jpg|right|thumb|[http://mechatronics.mech.northwestern.edu/ Northwestern Mechatronics Design Lab]]]

The Northwestern University 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 [http://mechatronics.mech.northwestern.edu/ Northwestern Mechatronics Design Lab].
The Northwestern University 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 [http://mechatronics.mech.northwestern.edu/ Northwestern Mechatronics Design Lab].


The mechatronics wiki was initiated by undergraduate Ben Stephens in 2006, under the supervision of Profs. Kevin Lynch and Michael Peshkin. Since then, many students have contributed content.
The mechatronics wiki was initiated by undergraduate Ben Stephens in 2006, under the supervision of Profs. Kevin Lynch and Michael Peshkin. Since then, many students have contributed content.


<!--
Important: Please be sure to read the [http://mechatronics.mech.northwestern.edu/mech-rules.pdf Rules for Using the Mechatronics Design Lab].
Important: Please be sure to read the [http://mechatronics.mech.northwestern.edu/mech-rules.pdf Rules for Using the Mechatronics Design Lab].
-->


(Here you can find the [[Old Index Page]] of the mechatronics wiki, as of May 2, 2009. That page is now obsolete, and new material should be indexed on the pages below. New pages may be indexed in multiple places.)


* [[Editing the mechatronics wiki]] (or visit [[The sandbox]] to practice your wiki skills)
__TOC__
* [[NU32|Home page of the NU32 PIC32 microcontroller development board and the book "Embedded Computing and Mechatronics with the PIC32 Microcontroller"]]
* '''Books and Accompanying Videos and Software'''
** [[Modern Robotics|"Modern Robotics: Mechanics, Planning, and Control," by Kevin M. Lynch and Frank C. Park]]
** [[NU32|"Embedded Computing and Mechatronics with the PIC32 Microcontroller," by Kevin Lynch, Nick Marchuk, and Matt Elwin]]
* '''Courses'''
** [[DTC]]
** [[EDI Bootcamp]]
** [[Engineering Analysis 3]]
** [[ME 333 Introduction to Mechatronics]]
*** [[ME 333 final projects]] (2010 and earlier)
** [http://www.mech.northwestern.edu/courses/descriptions/433-advanced-mechatronics.html ME 433 Advanced Mechatronics]
** [[Northwestern Design Competition]]
** [[ME 449 Robotic Manipulation]]
* [[Electronics basics]]
* [[Sensors]]
* [[Actuators]]
* [[Communication]]
* Control computers and software
**[[Robot Club]]
**[[Medical Makers]]
**[[ASEE Robot Design Competition]]
**[[nScope]]
** [[Microchip PICs]]
** [[PC/104 stacks and Matlab xPC]]
** [[QNX]]
** [[Robot Operating System]]
** [[Processing]]
** [[Node.js]]
** [[Eagle]]
** [[KiCad]]
** [[C Compilers]]
* [[Tools in the lab and shop]] (software, hardware, supplies, etc.)
* [[Vendors and Useful Links]]
* [[Projects and miscellaneous]] (projects, research, and other mechatronics-related info)


<!--
[[2016 ASME ME Department Heads' Forum]]


[[Evaluating Form Closure Project]]

[[Stability of an Assembly Project]]

[[Writing a CSV File]]
<h3>Design Competition 2008</h3>

Wiki pages on sensors, actuators, programming, and microcontrollers: use pages below
<br>
* [http://www.mech.northwestern.edu/courses/433/Writeups/QuickStart/ Parts in the DC2008 quick start pack]
* [http://peshkin.mech.northwestern.edu/pic/info/piccintro_2008-01-24.pdf PIC C intro slides, as presented 2008/01/24 (pdf)]
* [http://peshkin.mech.northwestern.edu/pic/info/picinterfacing_2008-01-28.pdf PIC interfacing slides, as presented 2008/01/28 (pdf)]
<br>

<h3>Sensors and actuators for DC</h3>
* [[Using Solderless Breadboard|Solderless Breadboard & wiring that works]]
* [[Using LEDs & IREDs]]
* [[Using a laser]]
* [[Sensing optical tape|Infrared reflectivity]]
** Using phototransistors
** Sensing optical tape
* [[Comparators | Comparators : the analog digital interface]]
* [http://www.robotroom.com/FaulhaberGearmotor.html Faulhaber MiniMotor SA gearmotor with encoder], as well as [[Actuators_Available_in_the_Mechatronics_Lab#Faulhaber_1524E006S_motor_with_141:1_gearhead_and_HES164A_magnetic_quadrature_encoder|the local wiki page]]
* [[Adding a magnetic encoder to a GM3 Gearmotor]]
** Using magnetic switches (Hall Effect)
* [[High-current devices|Driving high-current devices: several options]]
* [[Driving a Stepper Motor]]
* [[Driving an RC Servo]]
* [[Accelerometers]]
* [[Strain gauges]]
* [[Using the Basic Stamp Microcontroller|Basic Stamp Microcontroller]] <b>Not recommended for DC2008</b>
* [http://www.mech.northwestern.edu/courses/433/Writeups/Battery_NiMH/ NiMH rechargable batteries and chargers]

<h3> [http://peshkin.mech.northwestern.edu/datasheets Prof. Peshkin's favorite datasheets]</h3>
<br>

<h3>PIC 18F4520 prototyping board </h3>
*[[4520 Board intro|Prototyping board intro]]
*[[4520 Board construction|Assembling the 18F4520 prototyping board, circuit, parts]]
*[[4520 Board use|Using the 18F4520 prototyping board]]
<br>

<h3>Programming with CCS C </h3>
*[[C language|The C language]]
*[[CCS C|CCS C, specifically for the 18F4520]]
*[[Embedded Programming Tips for CCS C]]
*[[CCS IDE|Using the CCS development environment]]
*[[Debugging C on a PIC]]
*[[More debugging tips]]
*[http://www.ccsinfo.com/forum/ CCS user forum]
<br>

<h3>Interfacing and skeleton code for the PIC 18F4520</h3><br>
<b>These topics have wiki pages <i>and</i> sample code available</b><br>
<b>[http://peshkin.mech.northwestern.edu/pic/code Link to all sample code here.]</b>
<br>
* [[Digital inputs & outputs]] (filename: DigitalIO)
* [[Analog Input]] (filename: AnalogInput)
** reading a trimpot
** reading a phototransistor
** amplified phototransistor, and IRED strobing
** using an instrumentation amp (example: for a strain gauge)
* [[Analog Output|Analog Output, and the I2C bus]] (filename: AnalogOutput)
* [[Waveform Generation with AD9833]] (filename: AD9833)
* [[SPI - Serial Peripheral Interface - on the PIC]]
*[[Pulse width modulation|Pulse width modulation (PWM) for driving motors or other high current devices]] (filename: MotorPWM)
** using H-bridges
* [[Interrupts]]
* [[Quadrature decoding in software]] (filename: QuadratureSoft)
* [[Quadrature decoding in hardware, or just counters]] (filename: QuadratureHard)
* [[Running RC servos]] (filename: RCservoSoft & RCservoHard)
* [[Watchdog timer]] (filename: Watchdog)
* [[PIC RS232|RS-232 serial communication between a PC and a PIC]] (filename: RS232)
* [[C Example: Serial LCD|Text output to a serial LCD display]]
* [[C Example: Parallel Interfacing with LCDs|Text output to a parallel LCD display]]
* [[Servo skeleton with fast & slow interrupts]]
* [[XBee radio communication between PICs]] (and between a PC and a PIC)
* [[I2C communication between PICs]]
* [[Serial communication with Matlab]]
* [[SPI communication between PICs]] <b> (Note: this function has not been successfully tested)</b>
* [[USB communication with PC]]
* [[Microphones]]
* [[Ambient light color sensing]]
* [[Controlling a seven segment display]]
* [[Storing constant data in program memory]]
* [[PIC computation time benchmarks]]
* [[Stepper motor control with the PIC]]
* [[Global Positioning System]]
* [[IR communication between PICs]] <b> (Note: this function has not been successfully tested) </b>
* [[Interfacing to External EEPROM]]
* [[I2C Motor Controller]]
* [[Interfacing with a Photodiode Array]]

<br>
<b>These topics have sample code available, but no wiki pages yet</b><br>
<b>[http://peshkin.mech.northwestern.edu/pic/code Link to all sample code here.]</b>

* Counter0 - Counting pulses with Timer0]
* Counter1 - Counting pulses with Timer1]
* Interrupt0 - Periodic servo cycles using interrupt routines, 10mS & slower; Timer 0]
* Interrupt2 - Periodic servo cycles using interrupt routines; 10mS & faster; Timer 2]
* InterruptExternal - Interrupts generated by an external pulse]

<br>
<b>These topics need more development</b><br>
<b>[http://peshkin.mech.northwestern.edu/pic/code Link to all sample code here.]</b><br>
* AnalogOutputParallel - Analog output using 8 digital lines]
* PIC-to-PIC communication
* Zigbee radio communication
* Modulated IR communication
* Strobing LEDs or IREDs for better range and immunity to background light
* I2C communication
* CAN bus
* Capturing data to Matlab
* Running stepper motors
<br>

<h3>PIC Microcontrollers</h3>
* [[PIC Microcontrollers with CCS Compiler]], for DC, 333, etc, using the CCS ICD-U40 device <b>[this section has been replaced by the material above]</b>
* [[PIC Microcontrollers with C18 Compiler]], for e-puck, or using the Microchip ICD device or
<br>

<h3>e-puck Mobile Robot</h3>
* [[e-puck Mobile Robot]]
<br>

<h3>[[Printing Circuit Boards]]</h3>

* [[PCB Artist | PCB Artist: Software provided by Advanced Circuits]]

<h3> Electronics </h3>
* [http://hades.mech.northwestern.edu/wiki/index.php/Category:Electronics Electronics]
* [[Phase-Sensitive Detection]]
* [http://en.wikipedia.org/wiki/Operational_amplifier_applications Op-Amp Applications]
<br>

<h3>Analog and Digital chips</h3>
* [[Comparators | Comparators: the analog to digital interface]]
* [[Filtering with the LMF100 | Filtering with the LMF100]]
* [http://en.wikipedia.org/wiki/Operational_amplifier_applications Opamps : building blocks of analog computation]
* [http://www.mech.northwestern.edu/courses/433/Writeups/InstAmp/instamp.htm Instrumentation amps, and NU circuit board for them]
* [[LED Drivers | Controlling large numbers of LEDs with LED drivers]]
* [[Opto-isolators | Opto-isolators: Signal transfer while electrically isolating circuits]]

<br clear=all/>

<h3>[[:Category:Sensors|Sensors]]</h3>

* [[Potentiometers|Angle, Linear Position: Potentiometers]]
* [[Optointerrupter|Beam Breaker: Optointerrupter]]
* [[Optoreflector|Proximity: Optoreflector]]
* [[Sensing optical tape|Infrared reflectivity : Sensing optical tape]]
* [[Reed Switch|Proximity: Reed Switch]]
* [[Hall Effect Sensor|Proximity, Angle: Hall Effect Sensor]]
* [[Rotary Encoder|Angle: Rotary Encoder]]
* Angular Velocity: Tachometer
* [[Photodiodes and Phototransistors|Light: Photodiodes and Phototransistors]]
* [[Photocell|Ambient Light: Photocell]]
* [[Thermistor|Temperature: Thermistor]]
* Temperature: Thermotransistor IC
* Audio: [[Microphones]]
* [[Accelerometers|Tilt, Acceleration: Accelerometers]]
* [[Strain Gauge|Force: Strain Gauge]]
* Current: Current Sense Resistor
* [[Limit Switch|Contact: Microswitch (Limit Switch)]]
* [[Ambient light color sensing]]
* [[Global Positioning System]]
* [[Optics]]
* [[Optical Locating]]
* [[Lateral-Effect Photodiode]]
* [[IR Target Illumination|IRED's]]
* [[Pressure Sensing]]

<br clear=all/>

<h3>[[:Category:Actuators|Actuators]]</h3>
[[image:All-actuators-captions-small.jpg|thumb|300px|[[Actuators Available in the Mechatronics Lab|Some of the available actuators]]|right]]

* [[Brushed DC Motor Theory|Brushed DC Motors]]
** [[Choosing a Motor and Gearing Combination|Choosing a Motor and Gearing Combination]]
** [[Linear Amplifier Motor Driver|Driving Using a Linear Amplifier]]
** [[Driving using a single MOSFET|Driving using a single MOSFET]]
** [[Pulse Width Modulation|Driving Using Pulse Width Modulation]]
** [[PIC PWM Motor Driver]]
** [[Gear Motor]]
** [[Pulse Width Modulation]]
** [[Pulse_width_modulation]]
** [[Driving using a single MOSFET | Driving a DC motor using a single MOSFET]]
** [[Driving a DC Motor using PWM]]
** [[Driving a high current DC Motor using an H-bridge]]
** [http://www.mech.northwestern.edu/courses/433/Writeups/AddEncoderHobbyEngGearMotor Adding a rotation encoder to a gearmotor]
** [[Using Opto-Isolators to Prevent Interference]]
* [[Brushless DC Motors]]
** [[Driving Brushless DC Motors]]
* [[Stepper Motor Theory|Stepper Motors]]
** [[Stepper Motor Circuits|Driving Stepper Motors]]
** [[Unipolar Stepper Motor Driver Circuit]]
** [[Bipolar Stepper Motor Driver Circuit]]
* [[RC Servo Theory|RC Servos]]
** [[555 Servo Circuit|Driving Your Servo Using a 555 Timer]]
* [[Solenoid Theory|Solenoids]]
** Practice: Driving Your Solenoid
* AC Motors
** [[Using the Yaskawa Motors]]
* [[Fans As Actuators|Fans As Actuators]]
* [[LIMS Air Hockey Table|LIMS Air Hockey Table]]
* [[Actuators Available in the Mechatronics Lab]]
<br clear=all/>

<h3>Mechanical Design</h3>
*Mechanics of Materials
**Beam Mechanics
**[[Mohr's Circle]]
*Failure Theories
**Static Loading
**Variable Loading and Fatigue
*[[Attaching to a shaft]]
*Support
**Housings
**Shafts
**[[Bearings]]
*Transmission
**Rigid: [[Gears]]
**Flexible: Belts, Chains
**Motion Connection/Separation: Clutches, Brakes, Couplings
*Linkages
**Serial Chains
**Parallel and Closed-Loop Chains
*Other: springs/dampers, cams, etc.

<br clear=all/>

<h3>The PC/104 Stack</h3>
[[Image:Img0174.jpg|thumb|300px|[[PC104 Overview|The PC104 Stack]]|right]]
* [[PC104 Overview|Overview]]
* [[The PC/104 Lab Kit]]
* Hardware:
** [[Advantech CPU Card]]
** [[Sensoray 526 Data Aquisition Card]]

** [http://www.mech.northwestern.edu/courses/433/Writeups/PC104BoB/stack.htm#power[Power Components]]
** [http://www.mech.northwestern.edu/courses/433/Writeups/PC104BoB/stack.htm#electrical[I/O Electronics: Analog I/O, Digital I/O, Encoder Connections]]
* Advanced: Creating a Working Stack from Parts
** [http://www.mech.northwestern.edu/courses/433/Writeups/PC104BoB/stack.htm [Building the Breakout Board]]
** [http://www.mech.northwestern.edu/courses/433/Writeups/PC104BoB/stack.htm#ribboncables[Breakout Board Ribbon Cables]]
** [http://www.mech.northwestern.edu/courses/433/Writeups/PC104BoB/stack.htm#mechanical[Assembling the PC104 Stack]]
** '''[[Creating an xPC Flash Boot Disk]]''' <- when new version of MATLAB
* Custom Boards
** Dual PWM Motor Controller
** Dual Linear Amplifier Motor Controller
<br clear=all/>

<h3>xPC Target Real-Time Operating System</h3>

* [[xPC Overview|Overview of Real-Time Programming with Simulink and xPC Target]]
* [[Configuring xPC Target PC|Configuring xPC Host/Target PC]]
* [[Creating a Simple xPC Program|'''Quickstart''':Creating a simple xPC Program]]
* [[Common xPC Blocks|Commonly Used Blocks]]
* [[Using the Host Scope]]
*Advanced
** Model Properties
** [[XPC M-file Communication|M-file communication]]
** Using outside of the lab
** [[media:standalone.pdf|Standalone Mode]]
** Stateflow
* Code Examples
** [[Controlling a DC Motor with an Encoder]]
** Something With State Machine
** [[Using RS-232 and Printing to LCD]]
**[[UDP Communications between Target and Host PC]]
** M-functions and S-functions
** [[xPC Code From Student Projects]]
<br clear=all/>

<h3>QNX Real-Time Operating System</h3>
*[[media:qnxtemplate.zip|QNX Control Program with Interrupts]]

<br clear=all/>

<h3>Lab Supplies and Data Sheets</h3>

* [http://spreadsheets.google.com/pub?key=pa_bNAhFF-OvvxpSje1KDYg&output=html&gid=0&single=true Generally stocked lab inventory ]

<br clear=all>

<h3>[[Vendors and Useful Links]]</h3>

<br clear=all>

<h3>Other Software</h3>
*[[List of Useful Software for Download]]
*Circuit Schematics and PCB Layout
*LaTex Document Preparation
** [http://meta.wikimedia.org/wiki/Help:Formula Mathematical Formulae]
** Document Formatting
** [[LaTeX Software Setup|Software Setup]]
** IEEE Styles

<br clear=all>

<h3>[[Other Lab Equipment]]</h3>
* Prototyping Tools
** [[Tektronix TDS220 Oscilloscope]]
** [[Tektronix CFG253 Function Generator]]
** [[media:Mastech_power_supply_manual.pdf|Mastech Power Supply]]
** Fluke III Multimeter
** Benchtop Multimeter
** Powered Breadboard
** Soldering Iron
* [http://ediacaran.mech.northwestern.edu/neuromech/index.php/Lab_Equipment High Performance Neuromechatronics Benches]
* The Sensoray 626 DAQ Card

<br clear=all>

<h3>Course Material</h3>
* [[ME 224 Experimental Engineering]]
* [http://lims.mech.northwestern.edu/~lynch/courses/ME333/2009/index.html ME 333 Introduction to Mechatronics]
** [[ME 333 Lab Kits]]
** [[Lab 5]]
** [[Suggested final projects]]
** [[ME 333 final projects]]
<!--
* [http://www.mech.northwestern.edu/hartmann/ME333_CourseInformation.html ME 333 Mechatronics]
-->
-->
[[Mobile Manipulation Capstone 2024]]
* [http://www.mech.northwestern.edu/courses/433/ ME 433 Advanced Mechatronics]

<br clear=all>

<h3>Miscellaneous</h3>
* [[Swarm Robot Project Documentation]]

* [[Machine Vision Localization System]]
* [[Indoor Localization System | Indoor Localization System (Obsolete)]]
* [[Robot Helicopter Project]]
* [[E-Puck Color Sensing Project]]
* [[Guitar Tunning Project]]
* [[Swarm Robot Project]]

Latest revision as of 13:17, 12 November 2024

The Northwestern University 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.

The mechatronics wiki was initiated by undergraduate Ben Stephens in 2006, under the supervision of Profs. Kevin Lynch and Michael Peshkin. Since then, many students have contributed content.


(Here you can find the Old Index Page of the mechatronics wiki, as of May 2, 2009. That page is now obsolete, and new material should be indexed on the pages below. New pages may be indexed in multiple places.)

Mobile Manipulation Capstone 2024