Difference between revisions of "Skittles M&M's Sorting Machine"
m (Ivc moved page Skittles Sorting Machine to Skittles M&M Sorting Machine) |
|
(No difference)
|
Revision as of 23:30, 27 November 2013
This is a sorting machine for separating the different colored Skittles and M&Ms pieces and putting them into cups. The machine is fully autonomous and will sort an entire 1.5kg/56oz bag in approx. 5 minutes. It is made of a microntroller, servos, sensors, plastic frame tubes and 3D printed parts.
Features
- Supports Skittles, M&M's, Reese's pieces and similar sized candies
- Sorts based on piece color
- Up to six cup positions
- Hopper handles up to 500 gram / 17 oz bags
- Processes up to 80 pieces per minute
- Easy maintainable C code - Arduino platform
- Runs off single 9V power supply
- External terminal possible for statistics and diagnostics
How it works
Central in the system is an Atmel ATmega328 microcontroller - integrated nicely on an Arduino Uno platform. Every sensor and servo actuator connects to this board. External 9V power keeps the system running.
Loading pieces
The machine uses two GWS servos for loading and sorting the pieces. A continuous rotation servo with a variable rotation speed loads pieces into predefined slots in the feed wheel. Each slot is just wide and deep enough to hold a single piece and if there is a piece stuck between the loading tube and the slot, the system will detect this (the delay in the detection of the expected slot) and reverse the rotation of the feed wheel to free the piece. In addition, to prevent pieces from clogging the top funnel and loading tube, a steel rod connected to the feed wheel will stir the pieces. There is a total of 4 slots.
Analyzing color
After the pieces have been put into individual slots, a white LED illuminates the piece and an ADJD-S311-CR999 CMOS IC with integrated RGB filters captures 3 color profiles at different angles. For the piece to be successfully identified and pass control, at least 2 of profiles have be within 3 standard deviation (three-sigma rule) of the pre-calibrated data set for Skittles or M&Ms. A RGB LED next to the feed wheel will illuminate to give a visual indication of the detected color. The feed wheel rotation is governed by a QRE1113 IR distance sensor which detects the slot depth change. This transition is used to change process state and start the color analysis at the right moment.
Sorting
When the color has been identified, the piece is dropped from the feed wheel and onto a 360-degree servo with a feeding tube attachment which guides the piece into the right cup. The piece is release from the feeding wheel just before the feeding tube is within range of the cup. This means that the piece is on its way down the tube and just as it exists the end, the servo has has had time in the meantime to get into position. This leads to increased performance as the system does not need to hang around and can move to the next cup straight away. This is purely done by timing the expected rotational velocity and no feedback is provided by the servo. The servos are the bottlenecks of the system and predominately dictates performance.
After all the pieces have been sorted and the sensor does not register any consistent data, the machine is shut down and waits for the next round.
Parts and cost
Building the machine required the following parts, the BOM (Bill-Of-Materials) for the project. There is a few parts which where 3D printed but most are easily available.
No. | Part number | Description | Quantity | Cost |
---|---|---|---|---|
1 | ARD-UNOR3 | Arduino Uno R3 | 1 | 29.95USD |
2 | RE210-S1 | Prototyping 2.54mm Pitch Board | 1 | 2.95 USD |
2 | PSU-9V1A | Regulated switching 9VDC 1A power adapter | 1 | 5.00 USD |
2 | ROB-09453 | Analog Line Sensor (QRE1113) Breakout Board | 1 | 2.95 USD |
3 | SEN-10701 | Color Light Sensor (ADJD-S311-CR999) Evaluation Board | 1 | 14.95 USD |
4 | S35-STD | GWS Robotic Continuous Rotation Servo | 1 | 13.49 USD |
5 | S125-1T-2BB | GWS Sail Winch 360-degree Rotation Servo | 1 | 19.95 USD |
4 | PRT-10373 | Jumper Wire 3-pin 12-inch | 1 | 1.95 USD |
5 | PRT-10375 | Jumper Wire 5-pin 12-inch | 1 | 1.95 USD |
5 | ROD-1MM | Steel Rod 15x1mm | 1 | 0.50 USD |
6 | PRT-FEEDER | 3D Printed Hopper/feed wheel | 1 | 8.00 USD |
6 | PRT-SEEDER | 3D Printed Carousel/item seeder | 1 | 8.00 USD |
6 | FUNNEL | Funnel 140mm | 1 | 3.00 USD |
6 | IC-TUBE | IC/compoment plastic tube 23x20x500mm | 10 | free/0.50 USD |
6 | DIN85M3x5 | M3 x 5mm Slot Pan Head Screw DIN 85 | 20 | 0.08 USD |
6 | DIN85M3x50 | M3 x 50mm Slot Pan Head Screw DIN 85 | 20 | 0.16 USD |
6 | DIN85M3x30 | M3 x 30mm Slot Pan Head Screw DIN 85 | 40 | 0.14 USD |
6 | DIN125M3 | M3 Washer Form A DIN 125 | 100 | 0.014 USD |
6 | DIN439M3 | M3 Thin Nut DIN 439 | 100 | 0.048 USD |
Total | 127.04 USD |
Download
Code
The C code for the project is available below. It is Arduino IDE compatible and opens all the required libraries, no need to install any libraries.
- Download
Models
The package below contains all the 3D print parts used in the project. The files are STL and ready to be imported into most 3D printing software.
- Download
Video
Embed and link to yT video