FHEMCocktail

Begonnen von 2P4u, 24 Juli 2016, 21:55:31

Vorheriges Thema - Nächstes Thema

2P4u

Hallo Miteinander.
Ich habe grade ein Bastelprojekt im Kopf.
Es geht um eine Cocktail Mix Maschine via FHEM.
Diese soll mit dem Firmata Modul und einem Arduino gesteuert werden (oder anderst wenn ihr da n Vorschlag habt).
Einfache Relais am Ardu Ausgang die entweder Magnetventile oder Schlauchpumpen schalten.

Das ganze sollte Rezepte hinterlegt haben, mit der Möglichkeit aus ca. 12 Zutaten einen Cocktail zu mixen.
Ich dachte da an ein "Rezept" was die Pumpen oder Ventile zeitlich ansteuert (on-for-timer)
Nun wollte ich euch mal Fragen ob ihr da Ideen habt für die Umsetzung mit FHEM.

Es gibt schon viele Bespiele im Netz, jedoch keine die mit FHEM funktioniert.

Also bitte her mit den Vorschlägen! Ich habe bereits die ersten Teile der Maschine ansich bestellt.
Auch habe ich damit begonnen eine 3D Zeichnung zu erstellen, denn das ganze soll auch mit dem 3D Drucker druckbar sein.

Lieben Gruss Daniel
1x Ubuntu Server
1x LaCrosse Gateway für PCA301 /1x HMLAN /1x HMLGW
2x HueBridge mit Devices/ 1x Logitech Harmony Ultimate

betateilchen

Magnetventile und Schlauchpumpen, durch die Lebensmittel (andere als Wasser) fließen? Viel Spaß beim Klären der Hygienefrage...
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

2P4u

Zitat von: betateilchen am 24 Juli 2016, 21:58:54
Magnetventile und Schlauchpumpen, durch die Lebensmittel (andere als Wasser) fließen? Viel Spaß beim Klären der Hygienefrage...

Ja ein überall immer wiederkehrendes "Problem". Die Magnetventile wären nur um einen Überdruck in der Flasche zu erzeugen, quasi wie bei einer Zapfanlage.
Die Schlauchpumpen an sich haben keinen Kontakt zu den Lebensmitteln. Einzig und alleine die Schläuche werden natürlich in Kontakt damit kommen.
Da ich für ein Pharmaunternehmen arbeite ist es mir möglich Silikonschläuche mit einer FDA Zertifizierung zu bekommen (darauf muss man wirklich achten).
Aber generell gebe ich dir Recht, Hygiene steht an erster Stelle.
Aber hier soll es nicht wirklich um die "Mechanische" Lösung gehen, sondern vielmehr um die Möglichkeit das ganze mit FHEM zu steuern.

Hier bin ich auch grade auf eine gute Möglichkeit gestossen, die zwar noch nichts mit FHEM zu tun hat, aber mal ein Anfang wäre.
Evtl. kann man das ja in ein Modul umbauen ;)

https://github.com/ytham/barmixvah

Hast du da ne Idee?
1x Ubuntu Server
1x LaCrosse Gateway für PCA301 /1x HMLAN /1x HMLGW
2x HueBridge mit Devices/ 1x Logitech Harmony Ultimate

Rince

Ich würde ja doch erst mal die Mechanik überdenken.

Überdruck in den Flaschen, um Flüssigkeit durch einen Schlauch quasi raus zu drücken ist sicherlich erst mal eine gute Idee.

Ich sehe aber 2 Probleme (die man mit fhem evtl. lösen könnte):
1. Bei einer randvollen Flasche kommt in einer bestimmten Zeit viel mehr Flüssigkeit raus, als bei einer relativ leeren Flasche
2. Du wirst ja nicht nur klare Schnäpse "umfüllen", sondern auch mal Sirup.
Letztere dürfte völlig andere Zeiten benötigen, um auf die gleiche Menge zu kommen (und das voll / leer - Spiel haben wir noch gar nicht berücksichtigt)

Vermutlich könnte ein flexibles System, welches selbst nachregelt, besser sein:

Voraussetzung:
Du kennst das spezifische Gewicht deiner Zutaten (Sirup...)
(kann man in fhem hinterlegen)

1. Leeres Glas (oder mit Eiswürfeln drinn, je nach Rezept)
2. Das Rezept in fhem ist ausgewählt (Kann ja ein Dummy sein mit entsprechenden Dings, Attributen)
3. Du drückst auf deiner Maschine einen Start-Taster
4. Das Leergewicht wird bestimmt (du brauchst also eine Art Waage die mit fhem spricht)
5. Fhem schaltet nun die einzelnen Magnetventile an. Für den Anfang würde ich sagen, 0,5 Sekunden lang
6. Nach dem schließen wird gewogen und die Flüssigkeitsmenge errechnet
7. Wieder 0,5 sec Druck...
Solange, bis der Hinterlegte Wert für die jeweilige Zutat erreicht, oder überschritten ist. Vermutlich musst da ein bisserl spielen (hoffe, deine Leber ist in einem guten Zustand?), wenn bei 20ml schon 18 drin sind, und der nächste Schub auf 24ml käme, wäre es es evtl. auch Zeit zum aufhören?
8. Wenn erste Zutat drin ist, Gewicht wieder auf 0 setzen und es geht mit Zutat Nr. 2 weiter :)


Dann bräuchtest du nur:
1 Gewichtssensor
viele Ausgänge für die Magnetventile

und nen Kompressor, oder ne CO2 Flasche, wo auch immer du den Druck hernehmen willst, was aber nix mit fhem zu tun hat
Wer zu meinen Posts eine Frage schreibt und auf eine Antwort wartet, ist hiermit herzlich eingeladen mich per PN darauf aufmerksam zu machen. (Bitte mit Link zum betreffenden Thread)

tante ju

So ein Ding steht auf meiner Hobby-ToDo-Liste schon seit geraumer Zeit. Bin aber nie auf die Idee gekommen, es mit FHEM zu machen. Ich würde da einen separaten Controller nehmen, den man aber durchaus mit FHEM verbinden kann.

Ich sehe die Ansteuerung der Ventile/Pumpen und Waagen durchaus als zeitkritisch an und FHEM ist ja nun nicht so die Rennmaschine und kann ja auch mal blockieren (siehe mein I2C Problem).

Aber bei Interesse können wir das ja mal mehr im Detail diskutieren. Glaube aber, das wäre ein Projekt für die Wintermonate für mich.

justme1968

ich denke auch das ein lokaler controller der die zeitkritischen aspekte überwacht mit lokaler bedienung und einer fhem integration auf höherer ebene der bessere weg sind. das entlastet zum einen die fhem seite von den echtzeit anforderungen und löst das viel näher dort wo das problem entsteht.

schau mal auf youtube im applied science channel. da gibt es eine maschine die die zutaten für kekse mischt. man kann damit ein blech kekse backen bei dem jeder einzelne ein eigenes rezept hat. da gibt es sicher viele parallelen.

gruss
  andre
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

2P4u

Hi Zusammen.
Also erstmal zur Mechanik:

Ich habe mir jetzt viele Gedanken gemacht wie ich das am besten lösen kann.
Das mit dem Spzifischen Gewicht habe ich auch überlegt und bin zu dem Entschluss gekommen -> Mit überdruck (wahrscheinlich Kohlensäure, da mit Druckluft das Lebensmittel verdirbt) würde ich NUR mit Kohlesäurehaltigen Getränken machen sprich Cola.

Die Alkoholischen Medien werden mittels Dispensern gemacht
http://www.barproducts.com/upside-down-chrome-wood-dispenser-chrome-dispenser-heads
Hierzu baue ich ein Revolver mit 8 Flaschen. Diese Flaschen sind somit drehbar gelagert. Rund solls dehalb werden, da ich so enorm viel Platz in der Breite sparen kann. Also kann ich einfach mittels Schrittmotor die richtige Flasche über dem Ausguss platzieren und dann mit einem Linearantrieb bestehend aus einem Schrittmotor und einer Trapezgewindespindel nach oben drücken und somit die vorgegebene Menge ins Glas füllen.
Diese Dispenser sind gut zu reinigen, ausserdem können die Flaschen darin stecken bleiben, da sie dicht sind.

Da wir aber nicht nur "Zombies" und "LongIlandIceTee" produzieren möchten, brauchen wir eine Möglichkeit auch Sirup, Säfte und andere Zutaten zu fördern.
Hierzu werden ich unter dem ganzen Gestell zehn Schlauchpumpen installieren. Diese können genau dosieren und man kann sie leicht reinigen.
Sollte ein Schlauch, der Lebensmittel echt ist mal kaputt gehen, kostet der Ersatz auch nicht die Welt (1,80€/m).
Diese Zutaten sollen ausserdem in einem Kühlschrank (Ihr kennt doch dieses kleine Red Bull Ding) unter dem ganzen gekühlt werden.

Verbindung des "Saftausgusses" und des "Alkausgusses" erfolgt über einen Linearantrieb mittels Zahnriemen, welcher auch von einem Schrittmotor angetrieben wird. Ich muss dazu mal ne Skizze erstellen, damit man sich das mal vorstellen kann.

So kommen wir zur Steuerungshardware.
Gesteuert wird mit einem Arduino Mega, welcher eine Ethernet Karte hat.
An dem Arduino hängt 1-2 8Fach Relaiskarte wie man sie kennt, an welcher die Motoren der Pumpen hängen.
Ausserdem werden drei Motor Stepper Treiber A4988 über jeweils zwei Pins (Step,Dir) an den Arduino angeschlossen.
Somit ist es möglich die Pumpen zu steuern, den Revolver zu drehen, den Ausgiesser zu betätigen und das ganze hin und her zu fahren.

Soweit so gut, bis hierher alles kein Problem aber kommen wir zur Software.
Angedacht war erstmal das ganze über Firmata zu steuern, klappt auch super in den Tests nur leider bleibt Firmata irgendwie nach dem ich den Arduino vom Strom genommen habe und wieder neue verbinde nicht mit FHEM verbunden (keine Ahnung wieso).

Also muss ich die Steuerung dem Arduino überlassen und diesen quasi von aussen mit einer getroffen Rezeptauswahl füttern (wie auch immer).
Der Nachteil an dieser Lösung ist, die Rezepte sind fixe Abläufe im Code des Arduino und ich wähle quasi von aussen nur aus was er machen soll.

Was ich mir aber vorgestellt habe ist folgendes:
Ich habe einen Webserver, auf diesen kann man Rezepte erstellen und der Maschine auch sagen, wo welche Flüssigkeit angehängt ist.
Wenn ich dann ein Rezept auswähle und dieses starte, soll dem Adruino folgendes übergeben werden:
1. Fahre zum Revolver
2. Wähle Flasche 4
3. Dosiere
4. Wähle Flasche 6
5. Dosiere
6. Wähle Flasche 8
7. Dosiere
8. Fahre zum Saft Ausgabepunkt
9. Pumpe1 für "2cl" 3sek einschalten
10. PumpeX..... usw.
20. Fahre an Startposition

Für die Softwarelösung suche ich noch Ideen und brauche dafür eure Hilfe.
@ Andre: Kannst du dir das hier mal ansehen: https://github.com/ytham/barmixvah

Hier wird das ganze über js gesteuert.
Da ich mit mit js aber nicht wirklich auskenne, aber bereit bin es zu lernen wollte ich dich fragen ob zu meinst ob das auf nem Raspi auf dem auch FHEM läuft genauso mitlaufen kann.
Wäre halt schon toll das in FHEM zu integrieren  8)

So genug gelabert.
Bis Dann Daniel

1x Ubuntu Server
1x LaCrosse Gateway für PCA301 /1x HMLAN /1x HMLGW
2x HueBridge mit Devices/ 1x Logitech Harmony Ultimate

justme1968

dem code kann man auf den ersten blick nicht ansehen wie viele resourcen auf dem rechner tatsächlich nötig sind und welche echtzeit anforderungen es gibt.

prinzipiell kann man neben fhem auf dem gleichen system alles mögliche laufen lassen. probiere es einfach aus. wenn es probleme ist es einfach auf einen größeren rapberry (oder etwas schnelleres) zu wechseln  auch zwei getrennte rechner sind nicht komplexer aber vielleicht sogar aus zuverlässigkeitsgründen besser. jedes system macht das was es soll und beide kommunizieren miteinander ohne auf der gleichen hardware zu laufen. ein zweiter rasberry fällt vermutlich nicht so sehr ins gewicht bei den übrigen kosten.

gruss
  andre
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

2P4u

Ich habe aktuell FHEM prod auf einem Cubietruck und mein Testsystem auf dem Pi2.
Ich versuche das mal zu installieren, kann ich da auf dich zu kommen wenn ich da nochmal Hilfe brauch?

Grüsse
1x Ubuntu Server
1x LaCrosse Gateway für PCA301 /1x HMLAN /1x HMLGW
2x HueBridge mit Devices/ 1x Logitech Harmony Ultimate

justme1968

einfach fragen.

gruss
  andre
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

Wuppi68

als Datenübergabe zum Arduino kann man doch relativ einfach ein simples Protokoll machen ...

StartByte
Flasche1
.
.
.
Flasche8
Relais1
.
.
.
Relais8
Prüfsumme


Jetzt hast Du ein Byte pro "Komponente" und wenn Du 2cl als Menge definierst, dann kannst Du maximal pro Komponente 5l zapfen :-)
Jetzt auf nem I3 und primär Homematic - kein Support für cfg Editierer

Support heißt nicht wenn die Frau zu Ihrem Mann sagt: Geh mal bitte zum Frauenarzt, ich habe Bauchschmerzen

SpenZerX

#11
Wären statt Ventilen nicht Dosierpumpen die bessere Alternative? Da kannst du die Schläuche bequem zum Reinigen herausnehmen und genau dosieren.

Die ganze Mechanik brauchst du dann auch nicht. Einfach alle Schläuche an einem Punkt bündeln.

Wenn keine Luft in die Schläuche kommt ist Reinigen ja auch nicht nötig (bei Alkohol)

2P4u

Zitat von: SpenZerX am 28 Juli 2016, 12:52:13
Wären statt Ventilen nicht Dosierpumpen die bessere Alternative? Da kannst du die Schläuche bequem zum Reinigen herausnehmen und genau dosieren.

Genau das habe ich ja gemeint. Werde ich mit den Säften auch so machen :)
1x Ubuntu Server
1x LaCrosse Gateway für PCA301 /1x HMLAN /1x HMLGW
2x HueBridge mit Devices/ 1x Logitech Harmony Ultimate

fiedel

Hallo,

habe hier mal schnell meine Bewässerungssteuerung gepostet. Die arbeitet mit Rezepten und einer SPS- ähnlichen Ablaufsteuerung.  Ventil- und Rezeptzahl lässt sich beliebig erweitern. Die Pumpenrückmeldung könnte das Signal "Flaschenrevolver in Pos." werden. Vielleicht kannst du es ja gebrauchen und Weiterentwickeln. Es fehlt noch der Dummy mit den Merker- Readings. Den liefere ich noch nach...

Gruß

Frank
FeatureLevel: 6.1 auf Wyse N03D ; Deb. 11 ; Perl: v5.14.2 ; IO: HM-MOD-RPI-PCB + VCCU|CUL 868 V 1.66|LinkUSBi |TEK603
HM: SEC-SCO|SCI-3-FM|LC-SW4-PCB|ES-PMSW1-PL|RC-4-2|SEN-MDIR-O|SEC-WDS-2
CUL: HMS100TF|FS20 S4A-2 ; OWDevice: DS18S20|DS2401|DS2406|DS2423

kalle86

Habe sone mobile Coctail-mix  Maschine schonmal gesehen. Dabei wurden kreiselpumpen (Dosierpumpen) aus der Medizintechnik verwendet. Eine schöne Sache das ganze. Die Einbindung in fhem dürfte dabei auch nicht allzu problematisch sein  :D