Forum: Mikrocontroller und Digitale Elektronik PCF8475/ULN2803 Schrittmotoransteuerung


von OLLI (Gast)


Lesenswert?

Hallo an das Forum!

Ich habe folgendes Problem. Ich möchte einen 5pol Schrittmotor Schaltung 
PCF8574/ULN2803 über den I2C Bus ansteuern.
Hier habe ich mal einen C Code als Ansatzpunkt geschrieben:
1
#include "main.h"
2
3
#include "i2c.h"
4
5
#define STEPPER_DEV    0x42 //Adresse für PCF8574
6
7
int motorStep[4];  // Array für Steppersequenz
8
 
9
void stepper_left(void) 
10
{
11
InitI2C();
12
StartI2C(STEPPER_DEV);
13
14
motorStep[0] = 0x0A;   //   Binär: 0000_1010;
15
motorStep[1] = 0x06;   //   Binär: 0000_0110;
16
motorStep[2] = 0x05;   //   Binär: 0000_0101;
17
motorStep[3] = 0x09;   //   Binär: 0000_1001;
18
    
19
for (int i=0;i < 4;i++)
20
WriteI2C(motorStep[i]);
21
StopI2C();
22
}
23
24
void stepper_right(void) 
25
{
26
    
27
InitI2C();
28
StartI2C(STEPPER_DEV);
29
  
30
motorStep[0] = 0x09;   //   Binär: 0000_1001;
31
motorStep[1] = 0x05;   //   Binär: 0000_0101;
32
motorStep[2] = 0x06;   //   Binär: 0000_0110;
33
motorStep[3] = 0x0A;   //   Binär: 0000_1010;
34
    
35
for (int i=0;i < 4;i++)
36
WriteI2C(motorStep[i]);
37
38
StopI2C();    
39
}

Bin ich mit dieser Routine auf dem richtigen Weg. Bin noch unerfahren in 
C Code. Hat jemand für mich einen Link indem soetwa in C Code realisiert 
ist

Danke für eure Mühe von OLLI

von Gast (Gast)


Lesenswert?

Egal, was Du auch programmierst: PCF8574 + ULN2803 passen nicht 
zueinander. Vergleiche Ausgangsstrom vom '74 und Eingangsstrom vom '03 
und suche eine andere Lösung.

von OLLI (Gast)


Lesenswert?

Hi Gast,

Danke für die schnelle Antwort. Es existieren aber Schaltungen im Inet
mit dieser Kombination. Nur der Code ist hald in BASIC geschrieben.
Ich gehe doch davon aus das diese Schaltungen funktionieren oder?

von Michael U. (Gast)


Lesenswert?

Hallo,

wenn die Schaltungen PullUp-Widerstände für die Ansteuerung der 
2803-Eingänge benutzen, spricht auch nichts gegen diese Verwendung.

Gruß aus Berlin
Michael

von Michael U. (Gast)


Lesenswert?

Hallo,

Nachtrag: gerade so eine Schaltung im Netz gefunden...
http://www.the-starbearer.de/Roboter/Baugruppen/i%B2CSchrittmotortreiber/Schrittmotorkarte%20f%FCr%20I%B2C-Bus.htm
Bei solcherart Schaltungen hat Gast eindeutig recht.

Der PCF kann liefert bei H nur 30 bis 300µA, typisch 100µA
Das ist für einen 2803 zuwenig, wenn er niederohmige Schrittmotore 
sicher ansteuern soll. Da wird der Darlington im 2803 nicht voll 
durchgesteuert, die Verlustleistung steigt an und dem Schrittmotor fehlt 
unnötigerweiser der Spannungsavfall am 2803.

Wenn schon, dann 470 Ohm...1k von hedem Eingang des 2803 gegen die 
Betriebsspannung des PCF8475. Bei L am Ausgang dürfen max. 25mA fließen.

Gruß aus Berlin
Michael

von OLLI (Gast)


Lesenswert?

Hi Michael,

Das ist die Schaltung die ich verwendet habe. Nur habe ich das mit den 
PullUps übersehen. An dem wirds warscheinlich liegen! Der Motor zuck ja 
schon aber er dreht sich hald nicht so wie er soll.

Trotzdem Danke für die schnelle Antwort



Grüße aus München nach Berlin von OLLI

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.