Classroom Project Ideas
- Clock to show accurate date/time from a satellite.
- Logging program to save locations traveled over time. Dump data in a CSV format to view on Google maps.
- Calculate distance in feet between two points identified by pressing a button.
- Monitor the Lat/Long for a fixed position GPS. Over time calculate amount the location drifts. Figure out if a more stable reading can be obtained averaging over time and calculate accuracy vs sample time. Continue the analysis of the GPS capabilities by determining the reliable resolution of the data.
- Use two GPS units and two Zigbee™ transceivers to create a differential system. One GPS remains fixed and sends drift numbers to the other GPS to correct the position. Figure out how much this improves accuracy and resolution.
- Asynchronous communication protocol
- Complex floating point math
- Data logging
- Systems analysis
- Design an inventory control system. One button is used to indicate a item is removed and another an item is returned. A RFID tag is used to log who.
- Construct a multi-point access control system that has a method to add/delete new users and authorize and log user access.
- RS-485 networks
- PC interfacing
Complete Software Engineering Project
- Motor control
- Level sensing
- Safety control
DC Power Monitor/Control
- Simple program to show alternating voltage/current on an LED display. Use the push-button to turn the power on and off. Require a longer downtime to turn off.
- Enhance the program to to shut the power off if it is out of a specified range. Include hysteresis.
- Enhance the program to allow the user to set the LED brightness using the push-button. For example hold down the button on power on for 10 seconds to enter the adjust mode. Modulate the LED on time to control brightness.
- Voltage reading
- Current reading
- 7-Segment LED's
- Power control
- Using a single push button for multiple functions
- Critical timing
- EEPROM management
- FLASH management
- Process audio to pass only 300hz to 3Khz to provide a standard voice filter.
- Process audio to add an echo effect while a button is pressed.
- Design a program to play a recorded message when you clap three times within 4 seconds.
- Make a simple 1200 baud modem. Use 4 tones, 0 and 1, unit A and B so the two units can talk to one another acoustically in full duplex.
- Digital audio processing
- Create a chamber with a light bulb (for heat) and temperature sensor. From the smart device set a target temperature and then the PIC® MCU should maintain the desired temperature by turning the light on and off. The smart device should also display the current temperature.
- Bluetooth® Wireless Technology
- Smart device interfacing
- Using packaged libraries
- Designate one processor as the master. That processor on power up starts a 6x6 square moving to the right, as the square reached the edge it migrates to the next processor and so on. When there is no processor to pass the square to the square moves up 6 pixels and reverses direction.
- Implement the popular computer exercise "The game of life".
- Multi-processor communication
- Recreate the CCS program and add to it logic that allows the user to close the caliper for 3 seconds to reset it, then take three measurements. A Pass or Fail is indicated depending on if the measurements are within a specified tolerance or out of range.
- Find another brand of caliper and reverse engineer it to provide the same USB interface.
- Reverse engineering
Simple GPS modules can be used to improve programming skills by developing algorithms that range from simple data parsing to complex mathematics converting lat/long to feet. The basic interface is an excellent opportunity to develop a robust data communications module to issue commands and gather data. CCS Wireless - Ember ZigBee™ Edition
- Set up a system where a master node collects data from all the other nodes and sends that data over a USB port to a PC screen. Establish a method for a new node to enter the network.
- RF Zigbee™
- Mesh network
Ultrasonic Distance Measurement
- Precision timing
- Noise filtering
- Systems analysis
- Design a web server to show current temperature at the remote location.
- Design a unit that sends an e-mail out every time the temperature changes by more than 2 degrees.
- Design a unit that on power up downloads via FTP a file with part numbers and bin locations (inventory). The user can then enter a part number at the remote unit and it will show the bin location for the part.