When you have a ladder diagram as well as a wiring diagram troubleshooting is much easier.
Page 1 shows the 120 volt ac circuits well as the outputs from the Arduino controller. Page two are the inputs to the Arduino. I'll go through this rung by rung and explain each component, why it is there and why I chose to make it that way. Eventually I will also list a bill of materials for each rung, but that may be another day.
Page One
Rung 1:
The on/off switch controls power to all the devices and will be sourced from the popcorn popper. The "CR" contacts are from the high current relay that will control the power to the heating element. The over temp device is safety device that is already installed in the popcorn popper. Hopefully i will be able to keep this device in the circuit and still get the beans hot enough to roast. Lastly is the 11.2 ohm heating element from the popcorn popper. The 48.3 ohm element will not be used.
Rung 2:
The only device on this rung is the DC power supply from the IBM laptop. It is rated at 16 volts DC and 4.5 amps.
Rung 6:
This is the MOSFET that will control the fan motor. The fan motor is from the popcorn popper, but the full wave bridge rectifier has been removed since we are using the DC power supply now to power it.
Rung 7:
A single diode is in parallel with the fan motor to suppress any "flyback" voltage from the motor turning off and damaging the MOSFET.
Rung 8:
The Arduino digital pin 11 is used to turn the MOSFET on and off. Pin 11 was chosen since it is a pulse width modulated output. A 1K ohm resistor is in series with the MOSFET gate. I'm not sure if this is necessary. I noticed it was used in some circuits. Perhaps someone can clarify this. A 10K ohm resistor is used to pull the Arduino output to ground when it shuts off.
Rung 11:
A nine volt regulator to power the Arduino. I chose to use 9 volts since the Arduino Uno is listed as having overheating problems when powered with more than 12 volts, and having stability problems when powered with less than 5 volts. This meant that I shouldn't power it directly from the 16 volt power supply and I shouldn't power it from a 5 volt regulator either.
Rung 13:
This is the Arduino Uno that will be the brains of our coffee roaster.
Rung 15:
Here is the 5 volt regulator. I thought about just powering all the 5 volt devices from the Arduino 5 volt bus. My concern was though that it may be getting close to the maximum capacity of the Arduino board, and the 5 volt regulator is less than $2.
Rung 17:
The Control Relay (CR) coil that will be used to turn the heating element. Next is the transistor that will turn the control relay on. The relay coil draws about .2 amps so it is best to turn it on and off with a transistor and not to control it directly from the Arduino output pin.
Rung 18:
This is just a diode to control the "flyback" voltage that is generated from the relay coil shutting off.
Rung 19:
A LED that will be panel mounted and used to indicate when the heating element is on. This LED requires a 150 ohm resistor in series when used with 5 volts.
Rung 20:
The Arduino digital pin 10. I purposely chose a PWM pin for this output even though I am just using it as a digital pin in this case. If I want or need to have more control of the heating element, I can replace transistor and control relay with a MOSFET. A 1K ohm resistor in series with the transistor base. Again, I'm not sure if this is needed or not. Lastly a 10K ohm pull down resistor.
Rung 22:
The Arduino digital pin 5. This is simply wired to a panel mount LED. This LED can be used to indicate anything, but will most like just be used to indicate that power is switched on to the coffee roaster. The appropriate 150 ohm resistor is in series with the LED.
Rung 24:
This is a 10K ohm potentiometer that is used to adjust the brightness of the LED.
Rung 25:
The LCD that will be used to display information such as temperature and time. Pin 3 on the LCD is from the 10K ohm adjustment pot. Pin 16 is tied to ground.
Rung 26:
Pin 15 of the LCD is tied to 5 volts and pin 1 is tied to ground.
Rung 27:
Pin 2 of the LCD is tied to 5 volts and pin 5 is tied to ground.
Rung 28:
The Arduino digital pin 7 is tied to the LCD pin 4. The Arduino digital pin 12 is tied to the LCD pin 14.
Rung 29:
The Arduino digital pin 8 is tied to the LCD pin 6. The Arduino digital pin 9 is tied to the LCD pin 13.
Rung 30:
The Arduino pin digital 13 is tied to the LCD pin 11. The Arduino digital pin 6 is tied to the LCD pin 12.
Page Two
Rung 1:
Here is the breakout board for the thermocouple (TC) and it's IC chip. The VCC pin is tied to 5 volts and the GND pin is tied to ground.
Rung 2:
The Arduino digital pin 2 is tied to the TC card CLK pin. the TC negative terminal is wired to the TC red wire.
Rung 3:
The Arduino digital pin 3 is tied to the TC card DO pin and the TC positive terminal is wired to the TC yellow wire.
Rung 4:
The Arduino digital pin 4 is tied to the TC card CS pin.
Rung 7:
A 1nF (.001uf) capacitor is used to prevent interference induced in the wires being transmitted as a voltage to analog input 0 and producing errors.
Rung 8:
The Arduino analog pin 0 (A0) that will read a "stepped" voltage coming from a 12 character keypad. A series of resistors will be used to vary the voltage in steps that will be sent to pin 0.
Rung 9:
The rest of the series of resistors that will step the voltage through the keypad and into pin 0. The keypad can be used to input data into the Arduino program. Examples would be to change the time or temperature set points. The row of four resistors all tie to the keypad row0 pin. the column2 pin on the keypad is tied to the point between the Arduino analog pin 0 and 1K ohm resistor.
Rung 10:
The row1 pin of the keypad is tied between the 3.3K ohm and the 15K ohm resistors. The column1 pin of the keypad is tied between the 1K ohm and the 820 ohm resistors.
Rung 11:
The row2 pin of the keypad is tied between the 680ohm and the 3.3K ohm resistors. The column0 pin of the keypad is tied between the 820K ohm and the 1K ohm resistor that is then tied to ground.
Rung 12:
The row3 pin of the keypad is tied between the 180ohm and the 680 ohm resistors.
Row 14:
A normally open push button that will be used to start the roasting process. A 10K ohm pull down resistor.
Row 16:
The Arduino analog pin 1. Even though this is an analog pin we are using as a digital pin by either applying it with 5 volts when the button is pushed or by tying it to ground when the button is not pressed.
Rung 18:
A normally closed push button that will be used to stop the roasting process. A 10K ohm pull down resistor. I will take minute here to talk about why I chose a normally closed push button for the stop. Let's assume that we used a normally open button for the stop. If there is a failure such as a broken wire on the switch or if the switch has a bad connection, then you could not stop the process by pushing the button. The voltage would never get to the Arduino micro controller. By using a normally closed button, the process would automatically stop if we had a broken wire or bad connection. While this would be annoying, it would not be unsafe. Wiring start buttons as normally open and stop buttons as normally closed is a common practice in industry and considered the proper way of doing things.
Rung 20:
The Ardunio analog pin 2. It also is being used as a digital pin. In this case, if the pin ever falls below 5 volts the roasting process will immediately stop.
Rung 21:
A 10K ohm potentiometer (pot) is used as an input to the Arduino. These pots can be very useful. For testing, we can use them to directly control the fan speed. Once we have a finished product we can use the pots to select things such as the type of roast that we want.
Rung 23:
The Arduino analog pin 3 that is attached to the variable voltage coming from the above10K ohm pot.
Rung 25:
Another 10K ohm pot. Why you may ask. Well because I can and like I said, they are very useful. It may not get used, but I will probably add it for now.
Rung 27:
The Arduino analog pin 4 that is attached to the variable voltage coming from the above10K ohm pot.
No comments:
Post a Comment