Hacking a printers feeder

Hi.

I’m building a paper feeder that I will use in my shop in variuous ways so that I can do other things than feed my machines with papers.

I’ve looked at several videos and projects and decided to try to hack a printers feeding device which I bought cheaply.

I’m using the tutourial project 09 in the arduino book, with some modification.

All I really need is to hack into the printers motor and make it move forward a couple of seconds and then revese for a few second and repeat.

However I’m not sure what I need. I have the standard components in the arudino beginner box and a power supply: Mean Well 5V 10 A.

I got the motor going but it just move and doesnt respond to my code which is move 2 sec, rest 4 sec.

Also the transistor (mosfit?) and the diode got really hot, and somewhat started to emit a faint smoke.

I haven’t got to the bit where it going to reverse in the code.

So my problems:

  1. How to make the DC motor strong enough to feed the paper.

  2. How to connect the circut whit the right components.

  3. How to reverse the motor?

  4. Can I use the printers power supply in some way? its at 24 V 0.63A.

If you have ideas, good guides/ tutourials in mind.

–EDIT–

Here are some pictures as requested:

Image of Code:

Imgur

Image of printer and Arduino (sorry for the mess)

Imgur

Image of the circuit (from the textbook Project 09. DC motor is the printer.

Imgur

Thanks for all the help in advance.

Please post your program.

Also make a simple pencil drawing showing how everything is connected and post a photo of the drawing. See this Simple Image Guide

...R

I added links to images in the first post.

the transistor (mosfit?) and the diode got really hot, and somewhat started to emit a faint smoke.

That will be the magic smoke that is in all electronic components. Lose too much and they stop working :slight_smile:

CrazyAlbin:
I added links to images in the first post.

Please make them visible. I already gave you a link to the instructions.

A picture of program code is useless. Please just post the program.

For the future please don't make changes (other than correcting typos) in earlier Posts. Put new information in a new Reply so people trying to help you don't have to re-read earlier stuff.

...R

Sorry. Had some problem with the uploading. Will not edit the first post anymore.

What do you mean with program?

Here are the images:

Wirering.

Circuit

Hi,
Welcome to the forum.

Please read the first post in any forum entitled how to use this forum.
http://forum.arduino.cc/index.php/topic,148850.0.html .
Then look down to item #7 about how to post your code.
It will be formatted in a scrolling window that makes it easier to read.

Can you please post a copy of your circuit, in CAD or a picture of a hand drawn circuit in jpg, png?

Can you tell us your electronics, programming, arduino, hardware experience?

Thanks.. Tom... :slight_smile:

CrazyAlbin:
What do you mean with program?

The program you uploaded to your Arduino.

...R

TomGeorge:
Hi,
Welcome to the forum.

Thank you.

I'm new to Arduino. I had a course in C# for about 10 years ago. So I must say I'm pretty new to all this. I have some mechanical experience though. So the printers all mechanical parts works if I just can control the motor the way I want (moving forward for X sec and backward X sec).

/*
  Arduino Starter Kit example
  Project 9 - Motorized Pinwheel

  This sketch is written to accompany Project 9 in the Arduino Starter Kit

  Parts required:
  - 10 kilohm resistor
  - pushbutton
  - motor
  - 9V battery
  - IRF520 MOSFET
  - 1N4007 diode

  created 13 Sep 2012
  by Scott Fitzgerald

  http://www.arduino.cc/starterKit

  This example code is part of the public domain.
*/

// named constants for the switch and motor pins
const int switchPin = 2; // the number of the switch pin
const int motorPin =  9; // the number of the motor pin

int switchState = 0;  // variable for reading the switch's status

void setup() {
  // initialize the motor pin as an output:
  pinMode(motorPin, OUTPUT);
  // initialize the switch pin as an input:
  pinMode(switchPin, INPUT);
}

void loop() {
  // read the state of the switch value:
  switchState = digitalRead(switchPin);

  // check if the switch is pressed.
  while (switchState == HIGH) {
    // turn motor on:
    digitalWrite(motorPin, HIGH);
    delay ( 2000);
    digitalWrite(motorPin, LOW);
    delay (4000);

  }
}

Which part exactly gets hot? If it's the MOSFET, check its pinout and cabling, eventually use a logic level MOSFET instead. If it's the motor, use analogWrite() to reduce the motor power by PWM.

There is something missing in the diagram in Reply #8. You must not connect a motor directly to an Arduino I/O pin.

...R

DrDiettrich:
Which part exactly gets hot? If it's the MOSFET, check its pinout and cabling, eventually use a logic level MOSFET instead. If it's the motor, use analogWrite() to reduce the motor power by PWM.

The mosfet and the diode gets really hot.

Robin2:
There is something missing in the diagram in Reply #8. You must not connect a motor directly to an Arduino I/O pin.

...R

Yes. I forgot to add the mosfet between the motor and nr 9.

If the diode gets hot, it is connected in wrong polarity or is defective. If the MOSFET gets hot, it deserves a higher gate voltage to get into switching mode - then use a logic level MOSFET instead.

Hi,
Can you post specs/data on the motor you are using please?
What is the part number of your MOSFET?

If you disconnect the motor does the MOSFET still get hot?

Please draw a circuit diagram using your circuit as you have it, that is reverse engineer your project.

Thanks.. Tom.. :slight_smile:

Thank you for answers.

This is what I could find on the mosfet:

IRF 520
N82K CB

Then there is a bold S shape and a triangle.

The motor:

STD MTR QK1-8963
RC370-KT 47/15375 DV
SMED055729 5

I can't understand a thing about the motor.

No. The mosfet doesn't get hot if I disconnect the motor.

The circuit is the same as posted above. But here you go again:

Thanks!

The "IRF" on the MOSFET indicates that it is not suitable with microcontrollers. This is why it gets hot. Get an "IRL" (logic level) type instead.

You can measure the motor resistance, for a first guess of the right supply voltage. If the original power supply has 24V, this may be the right motor voltage.

I have used the IRFZ44 in similar circuits.

Hi,
When you have the circuit working, motor running and the MOSFET getting hot.
Measure the DC voltage between Drain and Source.

Tom.... :slight_smile:

DrDiettrich:
You can measure the motor resistance, for a first guess of the right supply voltage. If the original power supply has 24V, this may be the right motor voltage.

Yes its . Can I use the printers powersupply? and if how do I connect it to the circuit in a good way?

The powesupply has an output of 24V 0.63A. The one I'm using is 5V 10A output.

You can simply exchange the power supply, but only after you fix the hot MOSFET issue. If 24V should be too much, you'll get a hot motor issue.