Sziasztok!
Eléggé elakadtam, hátha valaki tud segíteni.
Megjöttek a dózispumpák,
View attachment 43738
és össze is raktam az első motorral a rendszert valahogy így:
View attachment 43737
12V hajtja meg egy IRFZ44N mosfeten keresztül a motort, 1N5819 Schottky diódával, 10k lehúzó ellenállással. A vezérlés szépen működik is. Az időt egy DS1307-es tinyRTC modultól kapom, ami I2C buszon kommunikál (Wire.h). A probléma az, hogy a motor olyan (elektromos) zajt csinál, hogy a DS1307 rendszeresen megdöglik, és ettől a Wire.h lib végtelen ciklusba kerül, lefagyasztva az egész arduinót. Találtam egy WSWire.h nevű library-t, amiben lekezelik az ilyen helyzeteket, és egy idő után kilép a ciklusból, hogy legalább a rendszer fusson tovább. Viszont az óra attól még elveszik, szóval nem annyira jó. Maga az arduinó egyébként nem resetel ilyenkor.
Mindez csak akkor történik, ha jár a motor. Nem mindig, de egy-két perc alatt reprodukálható. (Mondjuk elkezdi tolni a carbót, bedöglik, és benyomja az egész flakont a vízbe...)
Amit eddig próbáltam:
- 12V-os LED tápról meghajtva, L7805CV fesz szabályzóval csináltam 5V-ot. Leddel tök jó, motorral halál. Mindegy milyen kondikat tettem a lábaira.
- 12V-os táp -> LM2596 szabályozható DC-DC -> 5V dettó ugyanaz
- 12V-os táp csak a motornak, USB 5V az arduinóhoz, szóval két külön tápról meghajtva, csak a földeket összekötve, szintén ugyanúgy jelentkezik. Ez az a pont ahol már kezdem feladni.
Próbáltam a motorral párhuzamosan tenni 1uF, 10uF, 470uF-os kondikat, nem segített.
Próbáltam a DS1307 +5V-ja és a GND közé kisebb-nagyobb kondikat, nem segített.
Eddig motor nélkül kb. 3 hete teljesen stabilan ment ugyanezekkel a dolgokkal a ledes lámpa vezérlése. Szóval tanácstalan vagyok. A motor rossz? Vagy az óra modul?
Hogyan lehet ezt megoldani?