Anbei eine Motorsteuerung für eine Sattlernähmaschine. Bei der Singer class29 handelt es sich um ein älteres Modell -meine stammt von 1895- das aber heute noch gebräuchlich ist. Ich wollte damit die Haut eines Faltboots nähen. Das Programm ist so ausgelegt, dass es über einen taster die Stichzahl der Nähmaschine erfasst und daraus mittels PWM über ein Solid State Relais (SSR) einen 70 Watt Universalmotor auf niedrige Stichzahl einregelt. Bei ersten Nähversuchen mit unterschiedlichen Stoffen funktioniert es erstaunlich gut. Das SSR ist für Motorsteuerung nur bedingt geeignet, da es Wechselstrom nur in der Nullphase schaltet. Es kommt bei PWM deswegen zu einem An- und Abschwellen des Motorlaufs. Nach vielem Probieren habe ich bei ca 1khz eine ausreichend stabile PWM-frequenz gefunden. Das Programm hat einen Stitch10-Modus: Bei Betätigen des Interrupttasters am Kopf der Maschine werden genau 10-Stiche genäht- erleichter die Arbeit speziell für den ungeübten Anfäger. Per touchpad kann auf Dauerbetrieb umgestellt werden. Im Dauerbetrieb wird die Maschine über den Taster gestartet und angehalten. Das verwendete Cortex M3 LPCexpresso 1769 board ist mit 120MHZ für das programmtechnisch schlichte Projekt sicher deutlich überdimensioniert. Interrupt und PWM sind damit aber relativ einfach zu bewältigen. Außerdem ist das GLCD mit Touchpad beim ausprobieren hilfreich. Das Programm enthält aus früheren Programmierungen noch code zur Ansteuerung einer sd-karte und ähnliches. Dies mag für den einen oder anderen LPC-Nutzer nützlich sein.
:
Verschoben durch Admin
anbei noch ein Foto mit Details zur Befestigung des Tasters
Cooles Projekt. :-) Meine Tochter hatte zum 8. Geburtstag eine Nähmaschine bekommen, aber mit dem "Gaspedal" steht sie noch auf Kriegsfuss. Ich denke, es wäre ein nettes Projekt, eine Art "Bausatz" für alle möglichen Nähmaschinen zu entwickeln. Für die 230V würde ich snubberless Triacs nehmen.
> anbei noch ein Foto mit Details zur Befestigung des Tasters
Die 120 Jahre alte Nähmaschine ist aber eine wesentlich bessere
Ingenieursleistung als die elektrische Verdrahtung und mechanische
Anbringung der spannungsführenden Teile.
Allerdings: Wie macht die Nähmaschine das mit dem Unterfaden ?
hallo MaWin, das mit dem Unterfaden geht im Prinzip wie bei neuen Maschinen auch. Das besondere an der class29 ist, dass man den Nähkopf in jede Richtung drehen kann. Vorwärts, rückwärts, rechts, links nähen ... Bei der Installation habe ich mich bemüht, alle 1895 geltenden Sicherheitsvorschriften einzuhalten. Es gilt hier Bestandsschutz. Der Hinweis mit dem Triac ist ohne Zweifel richtig. Aber das wäre das nächste Projekt. SSR ist die einfachste gerade noch funktionierende Lösung.
leluno schrieb: > Bei der Installation habe ich mich bemüht, alle 1895 geltenden > Sicherheitsvorschriften einzuhalten. Du meinst, damals mußte man 230V nicht isolieren? Das SSR einfach so offen rumliegen zu lassen, wäre mir zu gefährlich. Ich würde alles in ein Gehäuse bauen mit Kabeln zu Motor und Taster. Klebeband oder Heißkleber nehme ich nur innen, wo man es nicht sieht.
Der Motor von dem Ding ist doch bestimmt so ein Teil mit B"ursten, der sowohl Wechselstrom als auch Gleichstrom kann. Warum dann nich auf Gleichstrom gehen und den Motor mit 'ner PWM + Halbbr"ucke + Drossel + Kondensator mit einer glatten Gleichspannung betreiben. Eine Zugeh-Angst zu 230V scheinst Du ja nicht zu haben. IR2184 + 2FETs als Halbbr"ucke passt in eine Streichholzschachtel.
Ich benutze für temporäre 230V-Lösungen gerne 1000g-Joghurteimerchen mit verschließbarem Deckel. Super Projekt, wenn auch die Maschine noch kein Overlock hat. Der Controller könnte das locker... ;-) Zeig mal bitte n Foddo des Zahnriemenantriebs.
>>Autor: MarcVonWindscooting (Gast) >> Warum dann nich auf Gleichstrom gehen und den Motor mit 'ner PWM + Halbbr"ucke + Drossel + das hatte ich zunächst probiert. das ssr ist ergebnis anregender Diskussionen unter >>Beitrag "Nähmaschine, Umbau auf Phasenanschnittsteuerung"
Cooles Projekt! > dass es über einen taster die Stichzahl der Nähmaschine erfasst Heißt das, nur ein Impuls pro Stich? Wäre es nicht viel besser, z.B. eine Reflexlichtschranke an den Speichen des Schwungrades anzubringen? > Ich benutze für temporäre 230V-Lösungen gerne 1000g-Joghurteimerchen > mit verschließbarem Deckel. Die mag ich auch gern für alles Mögliche! Superfos UniPak 5131 1180 ml Dm 133mm oder die von Joker Neuerdings habe ich auch die 2,5 und 5,0kg-Version im Einsatz. http://www.yayla-online.de/pos-controller.php?get=page&page_id=16&art_id=336 für 2,99 im Kaufland
>Autor: eProfi (Gast) >Reflexlichtschranke Auf einem Foto sind auf dem Shwungrad angeklebte Papierstreifen zu erkennen. In Höhe des Shwungrads ist eine LDR an die Nähmaschine geklebt. Die auf dem Display ersichtliche Zahl 163136 ist die Anzahl der ADC-Messungen pro Secunde. Mittels einer Reflexlichtschranke könnte man auch die Nadelposition steuern. Der mechanische Taster war zunächst nur als Provisorium gedacht. Aufgrund der Jahreszeit muss ih mich aus familiären Gründen leider erst um die Heizungssteuerung kümmern und habe für das Nähmaschinen-Projekt vorläufig keine Zeit mehr.
Nachtrag: funktionierende Phasenanschnittsteuerung mit 2€-China-Modul, LDR und PWM-LED
leluno schrieb: > mit 2€-China-Modul Ich habe hier zufällig noch ein ein ebay 151195009330 Gute Idee. Danke. ;-) Probiere ich mal aus. Allerdings mit Drehzahlaufnehmer und Solldrehzahl über den LDR.
:
Bearbeitet durch User
nach langer Zeit auf avr umgestellt und noch mal Änderungen an der Steuerung. Mit dem Chinamodul läuft die Maschine jetzt schön langsam und gleichmäßig. Über eine ISR wird die Umlaufzeit gemessen und danach per PWM-LDR die Motorgeschwindigkeit nachgeregelt. Nur fast perfekt, die Erfassung der Umlaufgeschwindigkeit bereitet wegen der Prellung des Schalters noch Probleme.
der Code:
1 | #define k29_port C//328
|
2 | #define k29_int_port 1
|
3 | #define k29_pin 3
|
4 | |
5 | |
6 | #define k29_value_register PIN(k29_port)
|
7 | #if k29_int_port==0
|
8 | #define k29_vect PCINT0_vect
|
9 | #endif
|
10 | #if k29_int_port==1
|
11 | #define k29_vect PCINT1_vect
|
12 | #endif
|
13 | #if k29_int_port==2
|
14 | #define k29_vect PCINT2_vect
|
15 | #endif
|
16 | #if k29_int_port==3
|
17 | #define k29_vect PCINT3_vect
|
18 | #endif
|
19 | #define PCMSK(x) GLUE(PCMSK, x)
|
20 | #define PCIE(x) GLUE(PCIE, x)
|
21 | |
22 | v u8 k29_regelung_an; |
23 | u8 pwm = 0x00; |
24 | v u8 k29_pwm,k29_ct; |
25 | |
26 | |
27 | void k29_init(void){ |
28 | DDR(k29_port)&=~(1<< k29_pin); |
29 | PORT(k29_port)|=((1<< k29_pin)); |
30 | PCICR |= (1 << PCIE(k29_int_port));//PCIntControlRegister |
31 | PCMSK(k29_int_port) |= (1<< k29_pin); |
32 | sei(); |
33 | }
|
34 | |
35 | |
36 | ISR(k29_vect){ |
37 | if(timer_10ms>3){//entprellung |
38 | //PCMSK(k29_int_port) &=~ (1<< k29_pin);//isr abschalten
|
39 | cli(); |
40 | |
41 | u8 umlaufzeit = timer_10ms; |
42 | if (k29_regelung_an){ |
43 | |
44 | |
45 | //umlaufzeit 10-15
|
46 | |
47 | |
48 | if(umlaufzeit<10){OCR0A = 20;}//zu schnell OCR0A*3/4 |
49 | if(umlaufzeit>15){OCR0A = 35;}//zu langsam OCR0A*4/3 |
50 | |
51 | }
|
52 | |
53 | |
54 | lgi(3,1,umlaufzeit);lw("-");li(OCR0A);lw(" "); |
55 | |
56 | sei(); |
57 | timer_10ms=0; |
58 | }
|
59 | }
|
60 | //---------------------------------------------------------------
|
61 | |
62 | |
63 | |
64 | |
65 | void sub_k29_an(void){ |
66 | |
67 | //startphase
|
68 | k29_ct=0; |
69 | led1_on; |
70 | TCCR0A |= _BV(COM0A1) | _BV(WGM00) | _BV(WGM01); |
71 | OCR0A = 100; |
72 | _delay_ms(200); |
73 | OCR0A = 70; |
74 | _delay_ms(200); |
75 | |
76 | OCR0A = k29_pwm; |
77 | _delay_ms(800); |
78 | |
79 | |
80 | //laufphase
|
81 | k29_regelung_an=1; |
82 | while(tast0){ |
83 | //OCR0A = 25;
|
84 | //OCR0A = k29_pwm;
|
85 | _delay_ms(1); |
86 | }
|
87 | k29_regelung_an=0; |
88 | |
89 | |
90 | //abschaltphase
|
91 | TCCR0A = 0; |
92 | PORTB&=~(1<<PD6); |
93 | pwm=0; |
94 | led1_off; |
95 | |
96 | |
97 | }
|
perfekt funktionierendes Programm zur Einregelung des Nähmaschinenmotors auf genau 40 Stiche pro Minute.
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.