CARTRIDGE HEATER AS OUTPUT DEVICE

WEEK12: OUTPUT DEVICES

ASSIGNMENTS:

 

Individual assignment

  • Add an output device to a microcontroller board you've designed, and program it to do something

   Group assignment

  • Measure the power consumption of an output device
  • This week's assignment was in continuation with last week's work where I have design my final project board with aim of  using it for input and output device week assignment.
  • So, ultimately I want to heat metal part by board which I have designed in final project. So I will taste heater here that it generates enough heat, and it functions  right with my board.

STEP01: Studying cartridge heater

  • Here I have started with studying cartridge heater and its characteristics.
  • Very good reference I have got is here from omega.
  • Fundamentally cartridge heater works on principle of 'Joule heating', which has resistive coil to generate hear from current.
  • Cartridge heater is mainly being used for heating metal part with direct contact. And where insertion or tube parts are there, cartridge heater suits best for placement.
  • It comes with heating coil, insulation, sheath and sealing.

Image:Reztas.com

  • I have bought 12V 40W cartridge heater with 6mm diameter. This heater can generate temperature upto 270 degree Celsius as per manufacturer.
  • I have particularly ordered this because for my application I need temperature in range of 210 to 240 degree Celsius.
  • Amazon link to buy this heater is here.

STEP02: Component and circuit requirement for cartridge heater

  • Now in order to use this cartridge heater with microcontroller board, one need interfacing circuit along with heater power supply and ground connection.
  • Heater should have mosfet to vary and control heating value by changing resistance. Mosfet is basically transistor which switches value based on voltage signal.
  • Mosfet has 4 pins, body, source, gain and drain. And its advisable to connect resistor with mosfet to change its value effectively.
  • So for one heater I will require these components. Mosfet, Resistor, LED, LED resistor, 2 pin header. To see these component list in detail, one can refer my week-10 assignment page
  • My connections of heater is as below. M1 pin goes to microcontroller, and by JPM1 header, heater will be connected.

STEP03: Programming board to check cartridge heater

  • Now here programming part was bit easy because I only have to turn on the the pin connection where heater is connected, simple led blink code will do the job.
  • For this first I have connected my board with FabISP to upload the program.
  • Then I wrote simple program as below with to turn pin number 7 heater.
  • Once successfully uploaded I went for connecting heater and power supply for it to board.

STEP04: Connecting heater to board

  • As I have designed board last week, and also soldering was done, board was ready to use with heater. Now here I have connected cartridge heater to 2 pin header of board for heater number 1.
  • I have connected 12V power supply by connecting 12V 1A power supply to DC jack in my board.
  • Once the 12V power supplied to heater, it start getting heated up.
  • Heating I can control from Ardiuno IDE program.

STEP04: Heating test with different value of delay

  • Once heater temperature got risen up, I have played with different delay values, as well without delay to check what temperature my cartridge heater takes.
  • To perform test task I tested cartridge heater to melt 3d printer filament with direct contact
  • Video of heater test

STEP05: Programming board to sense temperature of cartridge heater

  • Here I wanted to merge input and output devices, by measuring value of my output device with the help of temperature sensor.
  • For this first I have to write program with serial communication, so again I connect my board with FabISP and connected with my computer.
  • In below video I have been able to read temperature of cartridge heater with thermistor, and temp value is being displayed on serial monitor.
  • Thermistor reads temperature data of cartridge heater on serial monitor

Designing board to run servo motor

  • In order to have dedicated board for output device, I have build a board to run servo motor as output device.
  • I have decided to use ATtiny45 as micro-controller unit.
  • So, basically I will require ATtiny45, ISP header, 6 pin header for servo, resistor, and capacitor. I have given extra header to have possibility to connect multiple board and motors.
  • Schematic design for Servo board
  • Board design of Servo board
  • Milling png files for board tracing, drill and cut
  • Board after soldering components, which includes ATtiny 45, two 6 pin header, 10k resistor, capacitor, and 4 pin jumper.
  • For programming the board to run servo motor, I couldn't use arduino servo library, because AVRs used Arduino are Atmega 328P, with 8 bit controller, and arduino standard servo library are with 16 bit timer and ATtiny45 doesn't have that.
  • In code with software serial and defining Rx and Tx pins of IC. In the code, delay values are being used to set rotation angle of servo motor. For example 1000 is fully counter-clockwise and 2000 is fully clockwise.
  • For Angle of 0 we give a pulse of 1000 and the second pulse of 20000- 1000 = 19000. Same for 1500 that is midway at 90 degree we give  first pulse hight for 1500miliconds and second pulse high for 20000-15000 = 18500 Milliseconds

void setup()

{

  pinMode(0, OUTPUT);

}

 

void loop()

{

 

    for (int i = 0; i < 90; ++i) {

      digitalWrite(0, HIGH);

      delayMicroseconds(2000);

      digitalWrite(0, LOW);

      delayMicroseconds(18000);

    }

 

    for (int i = 0; i < 90; ++i)

    {

      digitalWrite(0, HIGH);

      delayMicroseconds(1000);

      digitalWrite(0, LOW);

      delayMicroseconds(19000);

 

  }

}

  • Connecting board with servo motor by  pin header and power is given Arduino board
  • Working of  servo motor with board as per above code.

LEARNING CONCLUSION & ORIGINAL FILES

  • After going through this weeks assignments and facing problems in programming I have understood that when we connect input and output devices together with same board requires clear and well defined variables in programming.
  • For this week's assignment, programming files can be downloaded from here

INDIVIDUAL CONTRIBUTION TO GROUP WORK

 

  • Output device group work we have tested DC motor function on oscilloscope.
  • Our intention was to measure power consumption of DC motor by means of  DSO
  • Here also we have worked as team to complete the assignment and learn.

Click here to see this week's group assignment work in detail

Go to Week 13

Go to Weekly work page

2018 | Tanvir Khorajiya