Universalplatine für LED, Dosierpumpe, Tempsteuerung, Uhr, .....

  • Das Motorshield ist dasselbe welches ich auch für die 4 Kanal Dosierpumpe verwendet habe. Die Option Motorshield habe ich für diejenigen miteingeplant, die keine Lust auf die Lötetei haben und brauchen im Prinzip nur das Motorshield draufstecken und laden den Dosierpumpensketch drauf und die Dosierpumpe ist fertig. Es gab diesbezüglich einige Anfragen. Andonsten ist dort ein PCA9685 drauf um u.A. eine LED Lampe bis 16 Kanälen mit 12 bit Auflösung betreiben zu können. Mit dem Adafruit 12 bit Servo shield können die Kanäle dann zur Not noch erweitert werden. Wird aber nicht nötig sein. Dann kann man noch 4-5 weitere Dosierpumpen gesteuert werden, wobei ich einen Transistor für die Lüftersteuerung reserviert habe. Der Rest sind halt weitere Optionen zum Erweitern wenn man möchte wie z.B. Ein Steckplatz für den RF Link Sender zum steuern von Funksteckdosen...


    Ich werd mal ein paar Beispiele posten was alles möglich ist ohne Aufwand.



    Gesendet von meinem iPhone mit Tapatalk

  • Das sieht ja schon mal genial aus !!!


    Und die kleinen Schönheitsfehler Können jedem passieren :)


    Freu mich schon auf neue bilder :)

    Mit freundlichen Grüßen


    Jens


    200l Mischbecken
    120l Artenbecken
    3 Stöckige Aufzucht Anlege für Ocellaris Mokka, LSD Mandarin und Korallen

  • Hallo Volker ,


    Wenn ich mich net verguckt habe, ist es möglich LEDs damit zu dimmen... Wie sieht es mit den Zuleitungen aus? Den meine diy Lampen werden 2 Stück für das 2m Becken . Mit einer Platine machbar?

    Salzige Grüße Sascha



    _______________________________________________________________________________________________________________________________
    Riff 1950x600x650 | TB 1200x400x400 | AS Deltec AP 701 | SP Jebao WP-40 | Licht Giesemann T5 4x80W | Ozon 50mg | HZ 2x 200W Eheim | Refill Eigenbau mit H-Tronic Pegelschalter
    _______________________________________________________________________________________________________________________________
    - Neues Projekt mal wieder ne DIY Led

  • Hi,


    wie meinst Du das? Ich bin gerade noch am Programmieren und am Austesten aber von der Theorie her kann die Platine das, ja! Weil ich einen Dockel für eine DC-DC Wandlerplatine (gibts für 1,5€ in der Bucht) drauf habe, kann man darüber die gesamte Platine über ein 24 V Netzteil versorgen. An der Platine selbst befinden sich für eine LED Lampe dann 16 Dimm-Ports, die mit der gewünschten Anzahl an KSQ verbunden werden können. Für Temp-Überwachung und Kühlung via Lüfter ist auch gesorgt.



    Gesendet von meinem iPhone mit Tapatalk

  • So, mal ein kleines Update. Habe bis auf die Dosierpumpenfunktion (4-8 Dosierpumpen können einzeln gesteuert werden) einiges austesten können.


    Zu Beginn habe ich natürlich erstmal die Funksteckdosensteuerung mit dem optionalen RF Link Sender getestet. Hier als Beispiel eine von vielen Funksteckdosen. Bei mir steuere ich so schon seit 3 Jahren meine Wassertemperatur, oder den Abschäumer oder die Rückförderpumpe oder einen Wasserwechsel...


    Externer Inhalt www.youtube.com
    Inhalte von externen Seiten werden ohne deine Zustimmung nicht automatisch geladen und angezeigt.
    Durch die Aktivierung der externen Inhalte erklärst du dich damit einverstanden, dass personenbezogene Daten an Drittplattformen übermittelt werden. Mehr Informationen dazu haben wir in unserer Datenschutzerklärung zur Verfügung gestellt.



    Als nächstes habe ich dann die LED-Steuerung angetestet. Die 16 intergierten und separat ansteuerbaren LED-Kanäle können mit 12-bit, also 4096 Stufen gedimmt werden. Darüber hinaus habe ich für den 16.Kanal ein Mond-LED-Kanal reserviert, bei dem ich einen Algorithmus verwende, der immer die aktuelle Mondphase verwendet. Man kann die maximale und die minimale Intensität allerdings vorbestimmen, um verwendete LEDs an sein Becken anzupassen. Die Mondphasen richten sich nach der maximalen Intensität.
    Die 15 restlichen Kanäle fahren ein von mir vordefiniertes Dimmprofil ab. D.h. Es wird nicht einfach nur von 0-4096 hochgedimmt sondern in einem bestimmten Profil.
    Des weiteren können bestimmt werden: Start, Ende, Länge der Start-Dimmphase, Länge der Ende-Dimmphase, Minimale Intensitär und maximale Intensität.
    Natürlich können die Lampen auch mit einer aktiven Kühlung ausgestattet werden. In einer Lampe können beliebig viele Temperatursensoren plaziert werden. Wenn eine manuell zu definierende Temperatur überschritten wurde, geht eine Lüfterkaskade an bis eine Untergrenz erreicht ist. So wird eine Hysterese bestimmt, damit die Lüfter nicht permanent laufen. Es werden 24 V Lüfter oder 2x12 V Lüfter in Reihe betrieben. Bei mir laufen 2 x 2 x 12 V Lüfter in der Lampe. Die Lüfter laufen bei mir ohne Geschwindigkeitsregelung, es ist aber ohne weiteres Möglich die Geschwindigkeit mit der Temperatur geregelt laufen zu lassen.


    Hierzu auch ein klines Video:


    Externer Inhalt www.youtube.com
    Inhalte von externen Seiten werden ohne deine Zustimmung nicht automatisch geladen und angezeigt.
    Durch die Aktivierung der externen Inhalte erklärst du dich damit einverstanden, dass personenbezogene Daten an Drittplattformen übermittelt werden. Mehr Informationen dazu haben wir in unserer Datenschutzerklärung zur Verfügung gestellt.



    Zuletzt für heute noch ein Kleines Video, wie ihr eure eigenen Taster mit der Universalplatine verwenden könnt. Es muss kein Kayboard mehr gekauft werden, sondern man benötigt nur 5 Taster nach eigenem Wunsch die man an die beschrifteten Steckplätze der Platine aufsteckt (Navigation: rechts, links, oben, unten, Select/enter) und fertig. Jeder kann selbst bestimmen, ob man sich eine eigenes Panel (wie auf dem Video) baut oder die Taster/Knöpfe nach Wunsch direkt mit dem Gehäuse verbindet.
    Es befindet sich also auf der Platine ein Steckplatz für das Keyboard/Keypad wie bei der DIY Dosierpumpe und ein Steckplatz für 5 Taster. Die Schaltung des Keypads ist also auf der Universalplatine integriert.


    Externer Inhalt www.youtube.com
    Inhalte von externen Seiten werden ohne deine Zustimmung nicht automatisch geladen und angezeigt.
    Durch die Aktivierung der externen Inhalte erklärst du dich damit einverstanden, dass personenbezogene Daten an Drittplattformen übermittelt werden. Mehr Informationen dazu haben wir in unserer Datenschutzerklärung zur Verfügung gestellt.



    So das wärs erstmal. Ich werde jetzt dann noch die Dosierpumpenfunktionalität überprüfen. Es besteht die Möglichkeit bis zu 8 Dosierpumpen zu steuern. 4 übers Motorshield wie bei der Dosierpumpe und 4 über auf der Platine bereits installierte Transistoren.


    Ich bin auch gerade schon dabei alle Funktionen in eine SW zu packen und fertig ist der Aquariumcomputer fürs Erste.
    Jeder kann natürlich auch sein eigenes Programm schreiben.


    Ich muss noch Kleinigkeiten im Layout optimieren und dann können Platinen bei Interesse bestellt werden.

  • Ist nicht geplant. Ich würde sie mir bestückt (also nur SMD-Teile) liefern lassen. Diese wurde auch bestückt geliefert. Hab mal auf 20 Stück angefragt. Um meine Unkosten dafür inkl. Anschlussklemmen, Knopfzellenhalter, reset-Button, beide Kristalle decken zu können, würde diese Platine 55€ kosten. Wenn mehr Platinen sogar noch günstiger.


    Den ersten 10 würde ich auch den DC-DC-Wandler spendieren.


    Hat das einen dpeziellen Grund weshalb unbestückt, Thorsten?



    Gesendet von meinem iPhone mit Tapatalk

  • Hallo na bei diesem Preis ist selber bestückung nicht so gut. Ich wollte mal wieder viele smd teile selber löten, das macht so ein Spass :)
    Ab wann kann ich bei dir bestelllen? Für mich kannst du bitte eine reservieren. Ich würde gerne noch eine PH Messung dabei haben, gibt's da eine Möglichkeit das noch unter zu bringen? Das ist das einzige was mir dann noch fehlt.


    Mfg Torsten

  • Hi Thorsten,
    Ich bin grade dabei die Motorshield Spiegelung zu korrigieren, damit man das Shield nicht auf der Platinenrückseite aufstecken muss. Mal sehen wie kompliziert das wird die Leiterbahnen umzuverlegen. Dann kann ich schauen ob ich noch eine Serielle Schnittstelle legen kann.


    Darüber spiele ich mit dem Gedanken den mega1280 durch den 2560 zu tauschen? Mal nachhören wie sich der Preis ändern würde.
    Mit meinem nicht optimierten Code wirds nämlich knapp mit dem Speicherplatz. Wenn es hier im Forum jemand gibt der im C programmieren fit ist kann er sich sehr gerne melden um meinen Vode zu optimieren.



    Gesendet von meinem iPhone mit Tapatalk

  • Hätte das ja schon mal Angeboten...


    Ich fände immer noch einen cortex m0 besser ^^
    Zumal dann eh alles in C wäre...


    Die nxp haben einen USB bootloader...
    Einfacher bekommt man das nicht darauf

    Dirk

  • Hi Dirk,
    das Problem ist, dass ich selbst kein guter C-Programmierer bin und froh dass ich mit den Arduino Libraries und den jetzigen Wissenstand klar komme. Also ganz roh ausserhalb dem Arduino Bootloader geht bei mir nicht auf die Schnelle.
    Als Alternative wäre der Cortex vom Due oder der in Kürze kommende Zero, bei dem auch ein Cortex verbaut ist. Dann wird es scheinbar auch mit der Arduino-SW gehen? Da habe ich momentan kein Plan, weil ich mich mit dem Due (Cortex) noch nicht beschäftigt habe. Ich kann nur das weitergeben was ich mir an Wissen mit Arduino selbst erarbeitet habe.



    Gesendet von meinem iPhone mit Tapatalk

  • Aber btt...


    Die libs sind in c++ geschrieben...
    Da kann man kaum rumpfuschen..


    Der Rest sollte kaum 128k Flash ausreizen...
    Oder ist es ein RAM Problem?


    Optimieren geht aber immer...

    Dirk

  • Da kann man kaum rumpfuschen..

    Naja, doch habe ich schon. Aber nur Kleinigkeiten.


    Nun, ja, es gibt Funktionen in meinem Code, z.B. die ganzen Menüeinstellungen der Dosierzeiten (z.B. in der Datei: MenüwerteSetzen), die viel Speicher schlucken, dass muss unbedingt beseitigt werden, wenn man alle 8 Dosierpumpen ausreizen möchte und zusätzlich die LED-Steuerung gleichzeitig nutzen möchte.


    Derzeit sehe ich vom RAM-Platz nur die Möglichkeit entweder 8 Dosierpumpen mit Schwimmerschalter...


    Oder LED-Lampe mit 16 Kanälen + weitere PCA9685 Module


    Oder Motorshield Dosierpumpe (4 Dosierpumpen) LED Lampe mit 16 Kanälen inkl. Lüftersteuerung und Tempsteuerung (Lampe, Wasser, Luft-Technikbecken...)


    Mit vereinfachter Schreibweise im Code (Code-Review) würde man alles unter die Haube bekommen und noch mehr.


    Wenn Du möchtest kann ich Dir ja mal meinen Code per PN schicken und Du schaust mal drüber. Die EEPROM-Speicherung geht auch einfacher wie ich weiss, müsste mich aber damit auch mal beschäftigen, aber ein wenig Hilfe von Anderen wäre nie schlecht.

  • oha


    also ich hab ja meine LED steuerung im mega88PA bei 2,3k flash ... ... die dosierpumpe ~2,2k
    jeweils um ~140bytes ram ...
    inkl dem Bussystem ... welches alleine schon 128bytes ram brauch
    die eigentlichen PWM routinen machen ~500-700bytes aus



    aber ein menüsystem hab ich ausch noch irgendwo rumliegen ..
    keine schönheit ... aber es funktioniert und kann sehr einfach erweitert werden


    ich weiß nicht wie die arduino IDE das macht mit den constanten strings
    der AVR ist da etwas ... hankelbastig ^^
    im AVRStudio gehts mit PROGMEM bzw das makro PSTR() um konstanten in den flash zu legen
    ein const xxx reicht da nicht ...
    IAR macht das mit #pragma __flash


    aber mit 128k flash kann man sehr komplexe geräte bauen ...
    demnach ist es eher ein RAM problem




    ich kenne nur eben die eigenarten der arduino IDE nicht ...
    arbeite meist nur mit ARV Studio ( 4.19 )
    oder der CooCox IDE + armGCC für ARM Cortex M0/M3

    Dirk

    Einmal editiert, zuletzt von saddevil ()

  • Ja, rohes C mit AVR Studio habe ich noch nicht programmiert. Arduino ist halt stark vereinfacht. In den Libs alleine stehen dchon eine Menge Sachen die viel Speicher schlucken. Damit jeder damit arbeiten kann sollte alles schon mit der Arduino IDE programmiert sein.



    Gesendet von meinem iPhone mit Tapatalk

  • Damit jeder damit arbeiten kann sollte alles schon mit der Arduino IDE programmiert sein.


    das ist aber nur wegen der arduin libs so ? richtig?
    also I²C , SPI .. und so zeug
    wenn man das auch in einer anderen Umgebung fetrig hat ( dann aber bitte richtig ^^ !! )
    dann ist der rest genau das selbe wie bei der arduino umgebung
    oder sehe ich das falsch?


    warum ich immer auf cortex schwenke ^^:


    NXP hat cortexe mit USB bootloader ... der cortex meltet sich als wechseldatenträger .. da kopiert man das kompilierte .bin file drauf und zieht den jumper .... fertig :)
    man brauch keinen FTDI baustein mehr .. auch die RTC ist intern im µC ... mit kalender + alarmfunktionen


    das schöne : das wären schonmal ein paar € weniger
    auch die batterie würde ich weglassen
    es gibt gaanz billige goldcaps ..0,1F oder so ... oder man nimmt elkos mit 5,5V und 10000-47000µF
    das reicht beim cortex für fast 24h aus


    der batt halter + batt kostet sicher mehr

    Dirk

  • 1 € Batteriehalter, 1 € (3xBatterie, also 33 cent/Stück) im Discounter um die Ecke. 1 € FTDI.


    Der einzige nachteil ist der Platz den der Baustein braucht, aber dass ist jetzt auch nicht die Welt. Ein USB-Stecker hat jeder zu Hause als Standard-Teil, Andere stecker sind schon wieder für den Normalo-User zu speziell.


    Aber ich gebe Dir recht. Die Cortex sind die neue Generation und mit Sicherheit viel Besser. Nicht ohne Grund verwendet Arduino die jetzt auch bei den neueren aber leider auch teureren Geräten. Für den Preis gibts bei mir die Universalplatine komplett mit allem was man braucht für einen ausreichenden kleinen Computer.


    Aber klar, für die Einfachheit mit dem Arduino zu Programmieren sind die Libs verantwortlich. Komplexe Sachen sind dort verankert.

  • wenn ich die zeit hätte könnt ich mal schauen ...
    derzeit würde es aber nur für mal fix reinschauen reichen


    stell die sourcen doch hier rein
    oder mach ein GIT oder google code bereich auf
    der war glaube kostenlos


    dann kann jeder dort reinschauen .. und ggf ändern
    die zugriffsrechte hast du und kannst es ggf dann übernehmen wenn es sinn macht


    vlt finden sich ja doch einige hier ...

    Dirk

  • Ja, ich wollte diesen Thread nicht mit unfertigem Code vollmüllen.


    Vielleicht leg ich wirklich mal ein Konto bei GIT an. Schau da nachher mal rein.


    Ist wahrscheinlich auch langsam mal sinnvoll, damit man sich immer den aktuellen Code runterziehen kann.


    Was ist mit Deiner Elternzeit? Ich dachte da findet sich viiiiiel Zeit. :P

  • bin ja elternzeit ^^
    aber ich will ja meinen kram auch mal weitermachen .. bzw fertig bekommen
    deswegen primär : meinen kram :)

    Dirk

Jetzt mitmachen!

Du hast noch kein Benutzerkonto auf unserer Seite? Registriere dich kostenlos und nimm an unserer Community teil!