Lüftersteuerung, Open Source Projekt

ja dann bau den Arduino selbst und steck ihn drauf.
Ich seh keine ansatzweise bessere Lösung.
Überall zu bekommen. Kostengünstig. Ist getestet. Jeder kann ihn direkt flashen.
 
Wenn Du diese Anzeige nicht sehen willst, registriere Dich und/oder logge Dich ein.
Hat n Leonardo eigentlich genug IOs ? Der is halt ganz praktisch wegen HID und kleinerer USB Buchse :)
 
für was HID? Eher en Arduino Micro.
Die buchse stört dich im rechner? Kannst genauso jeden Nachbau nehmen.
 
Also HID fänd ich nice. Haust nen IR Empfänger ein und kannst dann XBMC oder so mit ner Fernbedienung steuern :)
 
Also HID fänd ich nice. Haust nen IR Empfänger ein und kannst dann XBMC oder so mit ner Fernbedienung steuern :)

->

The Micro is similar to the Arduino Leonardo in that the ATmega32u4 has built-in USB communication, eliminating the need for a secondary processor. This allows the Micro to appear to a connected computer as a mouse and keyboard, in addition to a virtual (CDC) serial / COM port.
 
Ist ja ne Klasse Diskussion hier ;-)


4x PWM für Ausgänge,
4x PWM für RGB LED und Backlight,
4x Inputs für Tacho,
2x Taster,
1x Summer,
1x Digital Sensor,

Da bin ich schon bei den 20 Anschlüssen von dem Micro und hab weder ein Display, noch analoge Sensoren noch irgendwelche Anschlüsse für eine Erweiterung.

Zum Thema SPI und Erweiterungs IC's. Klar gibt es alles und ist auch nicht teuer. Display per SPI ist auch kein Problem, aber bis auf die Taster und den Summer kann man an einen Port Expander nicht wirklich was anschließen. PWM oder ein Serielles Protokoll per Software über SPI, über einen Expander zu realisieren ist zwar theoretisch möglich. In der Praxis aber kaum machbar und kostet sehr viel Rechenarbeit, da wird es insgesamt knapp. Von Problemen bezüglich Stabilität und Debugging mal ganz zu schweigen.

Außerdem schreiben die das mit dem USB bei dem Micro ganz nett, nur ist es keineswegs so simpel. Man muss da schon die richtigen Bibliotheken verwenden und mir schmeckt die Arduino Entwicklungsumgebung gar nicht (viele eigene Softwareroutinen, wenig Hardwarefunktionen des Chips).

Mal abgesehen davon ist der Bootloader beim Micro auch nicht sonderlich gut geschützt. Sprich wenn da mal was schief geht, braucht ihr auch wieder einen Programmer.

Außerdem sind knapp 20 € für das Stückchen Platine auch kein Schnäppchen...


Da finde ich die Version mit eigenem XMega viel besser, der ist günstig und hat viel mehr Hardwarefunktionen, die ich zum Generieren von PWM und Auslesen vom Tacho Signal auch reichlich nutze.

Das Problem mit der ersten Programmierung beleibt natürlich, aber das Angebot, dass ich Platinen nur gegen den Rückversand Programmiere steht nach wie vor. Und wer sich ernsthaft mit Microcontrollern beschäftigen will kommt um einen Programmer eh nicht herum.


Wenn es ein Arduino mit Xmega und 30 Pins für 20€ gäbe wäre das bestimmt ne Option, aber so nicht.


Davon einmal abgesehen ist das mit dem Micro auch vom Layout blöd. Ich müsste ja dann die Schmalseite mit dem USB direkt an Kante machen. Da hätten wir dann 3 Platinen übereinander und keinen Platz um die ganzen Leitungen weg zu führen...

Mfg Bimbo385
 
Warum denn den komischen xMega? Das ist imho ne Totgeburt. Total am Markt vorbei entwickelt.
Wenn man mehr Leistung und/oder Hardwarefunktionen haben will als ein atmega brauch dann sollte man gleich den Schritt zu nem Arm nehmen. Der xMega hätte einige Jahre früher kommen müssen.

Von Problemen bezüglich Stabilität und Debugging mal ganz zu schweigen.
Die da wärn?

mir schmeckt die Arduino Entwicklungsumgebung gar nicht (viele eigene Softwareroutinen, wenig Hardwarefunktionen des Chips).
Zwingt dich keiner die zu nutzen. Kannst den Arduino Core auch ins Atmel Studio integrieren. Ohne debugging ist das eh eher meh.
Und es gibt eben schon für sehr vieles fertige Bibliotheken. Man muss das rad ned ständig neu erfinden. Der Arduino Core nimmt dir die Instrumentierung ab. Danach bist du genauso Frei im programmieren wie ohne.

Über SPI geht PWN, Analog und Displays. Der IO Expander war nurn Beispiel. Nen atmega könnte man dafür auch zusätzlich drauf baun ^^ wäre mim Arduino ja ohne probleme Flashbar (Arduino - ArduinoISP).

Statt nem ARduino kann man natürlich auchn atmega/Arm direkt verbaun. Aber ohne Bootloader für die meisten halt doof. atmega geht durch sehr günstige ISP adapter ja noch. Die wenigsten die die Steuerung baun wollen wirklich was mit µC machen. Das sind jetzt ~3 Personen.
 
Sollte man nicht erstmal mit der aktuellen Platine es beste rausholen?
 
Ich bin auch dafür, mit der aktuellen Hardware zu arbeiten, noch ein paar (je nach Bedarf) Top-Platinen zu designen.
Sowie dann ein stabiler Stand erreicht ist, kann man in einem Neuen Thread darüber reden, was Sinn macht, wobei ich denke, man sollte erstmal die aktuelle Hardware auslasten, wenn man dann an die Grenzen kommt, dann gehts an die Zukunftsplanung ;)

Ich schlage vor, DeBauer macht seine QT Gui Sachen und Bimbo kümmert sich um die Hardware Sachen und Firmware, das ergänzt sich, wie ich finde perfekt :)

Ich habe meine Conflict nun eingebaut, läuft wie Sie soll, ich muss jedoch noch den DFM nochmal prüfen, der ging beim Test, aber im Produktsystem nun nicht, liegt aber wohl am zugesifften Radi, da werd ich doch nen neuen mal reinbauen, wird ehh mal wieder nötig.
Lüfter kommen nun nacheinander dran und die Pumpe auch bald, da muss ich noch einen Adapter basteln, damit das sauber und ordentlich wird :)

@Bimbo, der linke Taster hat derzeit nur die Funktion den Piepser umzuschalten (Displaywechsel = piep an / aus) oder ? [Habe danach nun aber auch nicht in der PDF direkt gesucht *schäm*]

Ansonsten läuft die Steuerung wirklich stabil bisher, gute Arbeit !
 
Ja bin ich auch für. Hab einige Ideen. Man kann ja parallel noch ne Deluxe Version entwickeln.
 
Ohne ne C implementierung ist Bimbo der einzige der daran wirklich was ändern kann.
und WTF die wollen echt 90€ für den Bascom Compiler? oO

Spricht ja auch nix dagegen 2 Hardwaren gleichzeitig vorran zutreiben. Würde die neue Rev eh nicht als Low Cost betrachten und da eher ordentlich was reinbuttern damit das ordentlich erweiterbar ist. Also Basic modell das in etwa den Umfang der aktuellen Steuerung hätte etwa 70-80€, dazu dann massig erweiterungsmöglichkeiten. Von komplexen Lichtsteuerung über Lan Anbindung bis zu großen Grafikdisplays wäre einiges realisierbar. Bei der aktuellen Hardware fängt das schon damit an das ich kein Grafikdisplay mit nem 4bit Interface kenne. Gibt tricksereien mit shift and store Bausteinen, aber das macht das doch sehr zähflüssig.
Mit unterschiedlicher Ausstattung bräuchte ich alleine schon ~5 Steuerungen. (Homeserver, 2 Teststände, Benchtable und Workstation)

Aber wenn sonst keiner Interesse hat dann werd ich einfach ne Hardware für Wakü Komponenten Teststände baun und keine aufgebohrte Lüftersteuerung.
 
Interesse schon, aber ich denke, zuerst die aktuelle auf einen guten Stand bringen, dabei lernen und dann wenn hier ein guter Stand erreicht ist, kann man sich an die Luxus Variante machen :)
 
so ich bins nochmal

wenns möglich wäre hätte ich gern nur eine einzige Seite angezeigt im Display

Inhalt:

Flow: xxxx °
H20: xxxx °
CPU: xxxx °


mehr brauch/will ich nicht, wäre das machbar?
 
Ja das Display irgentwie anpassbar machen wäre klasse. Das wechseln nervt auch manchmal ^^
 
Hey, bin auch dafür, dass wir erstmal die aktuelle Hardware beibehalten.

Über ein neues Topmodul mach ich mir wie gesagt in den Sommersemesterferien Gedanken. Dann sollten auch die Probleme mit dem ein oder anderen Lüfter in den Griff bekommen zu sein.

Was das Arduino Micro betrifft, kein JTAG kein PDI... Dann würde ich doch eher darauf plädieren ein ATXMEGA-A1 XPLAINED zu nehmen (40 €, 26 € mit Schüler-/Studentenrabatt). Das habe ich ja für die ersten Test verwendet. Das kann man auch ohne Programmer out of the Box verwenden. Da ist immerhin ein Lautsprecher, 3,3V Regler und USB drauf. Aber das ist eher Zukunftsmusik.

Ich stecke momentan voll in der Prüfungsvorbereitung. Display ist vorgemerkt und kommt. Außerdem denke ich ernsthaft über eine C Portierung der FW nach. Aber da ist noch viel zu tun.

Ziel ist bis zum Winter eine Version mit neuer Top Platine, anpassbarem Display, C-Firmware. Was das GUI betrifft nehme ich gerne Hilfe an, geht besonders an debauer ;-) Ich muss das nicht selber machen, war eher aus der Not geboren...

Es gab ja auch Kritik an dem Format der Befehle, wenn da konstruktive Vorschläge kommen nehme ich die gerne an!

Was ich allerdings anders sehe als debauer und der Ein oder Andere hier ist die preisliche Gestaltung.
Meiner Meinung nach soll die Steuerung sich Zielmäßig nach wie vor bei 50 € orientieren, der Bauteilpreis lag ja bereits gut 5 € darüber (was aber auch an dem Platinenpreis lag). Natürlich geht Technisch viel viel mehr. Aber es gibt ja auch fertige Produkte, die ausgereift sind und wem das Geld nicht stört...

Davon einmal abgesehen kann ja jeder der Lust und Zeit hat die Firmware auf ein größeres System portieren und erweitern. Später mit C dann auch einfacher.


Mfg Bimbo385
 
Ja dafür bin ich auch. Die aktuelle erweitern und mal richtig geil machen. Soll ich mal alle meine Wünsche aufschreiben ? Mal sehn wenn ich die ferien zeit hab dann arbeite ich mich auch mal da ein ^^
 
Aber ISP und damit istn Programmier Adapter sehr günstig. Dazu kleiner und günstiger. Da eh schon der bootloader drauf ist brauch man auch gar kein Programmier adapter.
Wennde umbedingt auf dein xMega beharst dann programmier in zukunft in C/C++, aber das haste ja schon ins auge gefasst :P da helf ich dann auch gerne.

Aber es gibt ja auch fertige Produkte, die ausgereift sind und wem das Geld nicht stört...
Aber nicht open source.
 
Naja bootloader flashen wird ja gegen versandkosten angeboten. Also kein Problem. Wenn es jemanden gibt der eine will sich das löten oder flashen net zutraut, mach ich das auch gerne.
 
Naja bootloader flashen wird ja gegen versandkosten angeboten. Also kein Problem. Wenn es jemanden gibt der eine will sich das löten oder flashen net zutraut, mach ich das auch gerne.

fang du jetzt endlich mal mit coden an! Sonst such ich dich heim und zwing dich dazu :P
 
Wenn man mal genau schaut kostet ein PDI Programmer auch nicht mehr als ein ISP. Die neueren AVR ISP MKII Klone können beides.

Warum Xmega ist ganz einfach, sind günstig und haben alles was man braucht. Einen ATmega32 hat einfach nicht genügend Timer für PWM und Tachosignalauswertung... (auch nicht, wenn ich PWM mit einem Timer und SW mache...) Da kommt einem halt die Peripherie und das Event System zu Gute. Ursprünglich wollte ich ja mal ganz auf SMD verzichten und einen ATmega16 oder 32 nehmen.

...da helf ich dann auch gerne.
Da hätte ich schon mal was... Hast du ne Idee wo man eine gute Bibliothek für die DS18S20 1-Wire Sensoren abgreifen kann? Hab da schon mal geschaut aber was wirklich Zufriedenstellendes habe ich nicht gefunden... Selber schreiben kann man natürlich, kann aber nicht behaupten, dass ich mich darum reißen würde...

Es gibt natürlich auch C-Compiler, die so etwas mitbringen (CodeVisonAVR) aber da sind die 90 € für Bascom günstig dagegen...


Mfg Bimbo385

PS: Und jetzt hau ich mich aus Ohr!
 
ich habe zum Vergleich Aquaero 4 und 5

"unsere" Steuerung ist viel leichter zu handeln in Bezug auf Temperaturgesteuerte Lüfterregelung und man brauch keine Wakü auf der Platine für die Lüfter wie beim Aquaero o_O
der Makel "unserer" Steuerung ist das nicht so schön konfigurierbare Display, sieht am Aquaero einfach schöner aus mit Durchfluss, Takt und Temps

wie gesagt ich finde die Steuerung genial, man kann alles nutzen was man will/braucht, mir fehlt nur die Konfig des Displays in Bezug auf Seitenanzahl, umblättern und Inhalt der Seiten :)

mir würde eine einzige reichen mit Durchfluss, Wassertemp, CPU/GPU Temp
 
Hast du ne Idee wo man eine gute Bibliothek für die DS18S20 1-Wire Sensoren abgreifen kann?

Beim Arduino ist glaub eine dabei. 1Wire interessiert mich aber stark.
OneWire Arduino Library, connecting 1-wire devices (DS18S20, etc) to Teensy

Den bekommt man auch ohne das Arduino Framework zum laufen.
In Software macht das aber schnell das Zeitverhalten kaputt und in den beispiel codes seh ich immer wieder delay(). Das muss man aufjedenfall umbaun auf ne Zeitbasis. Den code steuer ich gerne bei, den hab ich nämlich größtenteils fertig.
Wenn wir die Module gut trennen und nur über setter/getter bzw nem globalen Variablensatz kommunizieren lassen dann kann man die schön parallel entwickeln und tut viel fürs Zeitverhalten <- wenn auch hier nicht sooo wichtig, aber schön :)

Wie hast du eigentlich die UART Kommunikation geregelt? TX/RX per Interupt mit Buffer?
 
Das klingt gut. Schick mir doch einfach mal ein 1-Wire Beispiel, wenn du es fertig hast, dann kann ich das mal testen und dann auch gleich übernehmen.

UART ist zweigeteilt. Der Empfang läuft über Interrupt mit Buffer. Interrupt kommt, hole schnell Zeichen ab und schreibe es hinten in den Buffer (Assembler ISR). Im Hauptprogramm dann Überprüfung ob Empfang vollständig und ggf. die Reaktion.

Zum senden nutze ich fertige Routinen von Bascom. Die arbeiten glaube ich mit Polling. Also schreibe Byte ins Senderegister, warte bis gesendet, dann das nächste bis alles Gesendet...

Mfg Bimbo385
 
Wo habt ihr eigentlich die Pumpe angeschlossen? Man kann ja eine Laing z.B. auf 3Pin Lüfterstecker umlöten und dann an einen Lüfterkanal anschließen. Weil wenn man sie an den Pumpenanschluss hängt, dann weiß man ja nicht mit wie viel RPM die sich dreht.

Ich hab jetzt eine Lösung gefunden: Einfach das 3Pin Tachosignal extra anschließen. Ich mach mal nachher ein Foto:

15kopiewjhk04unxo.jpg


So sieht es aus. Nur wie befüll ich das System später? Die Pumpe kann ja nicht mehr an das Netzteil? Startet der Conflict die Pumpe automatisch wenn er ans NT kommt?
 
Zuletzt bearbeitet:
Ich missbrauche jetzt diesen Thread mal, ich habe hier des öfteren Arduino gelesen.
Ich bastel gerade auch an meiner eigenen Steuerung und arbeite mich gerade ins Coden ein.

Im Moment arbeite ich an dem abgreifen des Tachosignals der lüfter. Habs über nen normalen digital in probiert und quasi die steigenden Flanken gezählt und entsprechend umgerechnet.
Das funktioniert auch so ganz gut, so lange man nicht weiter an der loop rumbaut, Wenn dann mehr drinsteht werden die Werte verfälscht und das ganze kommt nicht mehr hin.
Das Problem ist, dass das ganze noch viel größer ist, wenn der komplette Code drin ist.

Jetzt habe ich überlegt, ob ich das nicht lieber über nen interrupt machen soll mit steigender Flanke.
Ist das die beste Möglichkeit sowas in einen vorhanden Code einzubinden? Oder gibts noch bessere, wo ich trotz umfangreichem Code richtige Werte bekomme?

btw. Ist nen Arduino Mega!

Gruß
 
Um den interupt kommste ned rum. wenn der impuls 10ms ansteht und deine zykluszeit 11ms sind dann verpasste immer mal wieder nen impuls.
Der interupt ist ziemlich simpel. IO Register einstellen, Interuptfunktion erstellen die nur nen merker hochzählt und fertsch. Wobei du ja das Arduino Framework nutzt... vllt gibts da was fertiges?
 
Hardwareluxx setzt keine externen Werbe- und Tracking-Cookies ein. Auf unserer Webseite finden Sie nur noch Cookies nach berechtigtem Interesse (Art. 6 Abs. 1 Satz 1 lit. f DSGVO) oder eigene funktionelle Cookies. Durch die Nutzung unserer Webseite erklären Sie sich damit einverstanden, dass wir diese Cookies setzen. Mehr Informationen und Möglichkeiten zur Einstellung unserer Cookies finden Sie in unserer Datenschutzerklärung.


Zurück
Oben Unten refresh