You are not logged in.

Dear visitor, welcome to Dein Meerwasser Forum für Nanoriffe. If this is your first visit here, please read the Help. It explains in detail how this page works. To use all features of this page, you should consider registering. Please use the registration form, to register here or read more information about the registration process. If you are already registered, please login here.

Aquafish007

Bastler vor dem Herrn

  • "Aquafish007" started this thread
  • info.dtcms.flags.de

Posts: 1,275

Location: Bergisch Gladbach

Occupation: Biotechnologe

wcf.message.sidebar.activityPointsPerDay

Thanks: 23

  • Send private message

1

Thursday, August 29th 2013, 11:01am

DIY Arduino Dosierpumpe

Hallo zusammen,

also ich ziehe das ganze jetzt mal von hinten auf.

Ich habe meinen Arduino Sketch auf ein Minimum reduziert und daraus eine Dosierpumpensteuereinheit programmiert, mit der man initial 4 Dosierpumpen steuern kann. Soll heißen, man kann:

1. Jeden Kanal manuell ein/aus-schalten
2. Jeden Kanal auf volumetrische Dosierung kalibrieren. (Geht ganz einfach: Schlauch an Spritze; Set Time Loop-Button klicken, abwarten Volumen von Spritze ablesen und in einen dafür vorgesehenen Platzhlter eintragen; fertig!)
3. Theoretisch unendlich viele Dosierzeiten pro Tag vergeben: Initial nur 1 (man düngt ja in der Regel nur 1 mal am Tag, abgesehen von Balling)

Viele weitere Funktionen kann man natürlich noch hinzufügen, wie z.B. nachträglich eine Nachfüllautomatik mit zusätzlicher Schlauchpumpe, Temperaturüberwachung, etc.

Natürlich alles ohne Ethernet gedöns. Man hat ein simples Menü, das man über ein Keypad steuern kann. Mehr nicht!

Nun habe ich schonmal im Aquagrow Projekt angegeben, was man alles dafür braucht (Links hierfür sind beispielsweise im Post: 66). Neben dem Arduino (am Besten Mega für spätere Erweiterungsmöglichkeit) benötigt man halt ein RTC Modul, ein 16x2 LCD Keypad, ein Motordrive shield, um 4 Dosierpumpen anzuschließen am Besten ein Protoshield für den Mega (oder man bastelt sich selbst eine Huckepackplatine aus einer Lochrasterplatine) und natürlich 4 Dosierpumpen aus der Bucht und ein kleines Netzteil.


Kostet in der Regel um 30-40 Euro für die Elektronik (exkl. Dosierpumpen). Vielleicht findet ihr ja auch günstigere Varianten


Günstige Varianten gibts z.B. hier:


Proto Kit:


http://www.ebay.de/itm/221041217549?ssPa…984.m1423.l2649


Dosierpumpen:
http://www.ebay.de/itm/151093653767?ssPa…984.m1423.l2649


Also wenn genug Interesse da ist, dann kann ich den gesamten Aufbau für jedermann simpel erklärt hier als Tutorium aufziehen.

Die Sache hat dann nur einen kleinen Haken. Da ich auch sonst einen Hauptberuf habe, werde ich nicht immer direkt antworten können. Aber es gibt hier bestimmt einige Elektroniker die weiterhelfen können.

Sven

Teppichliebhaber

Posts: 4,197

Occupation: ZTM

wcf.message.sidebar.activityPointsPerDay

  • Send private message

2

Thursday, August 29th 2013, 11:39am

Hoi

Natürlich ist da Interesse dran und ich denke nicht nur von meiner Seite aus.

Jedoch hört sich das für mich sehr kompliziert an und da wäre ich dir sehr verbunden wenn du mal so einen schönen Leitfaden erstellen könntest.
Vielleicht traue ich mich dann doch mal daran.

Auf jedenfall super interessante Geschichte.

Sven
Fragen zu Anemonen? Kleines Anemonen 1mal1

Florian

Beginner

    info.dtcms.flags.de

Posts: 54

Location: Viersen

Occupation: Elektriker

wcf.message.sidebar.activityPointsPerDay

  • Send private message

3

Thursday, August 29th 2013, 11:41am

Moin Volker,

coole und eine sehr Preis günstige Idee, aber brauchst du dann kein Relay-Bord ?
Oder die Schaltest du die Pumpen?
Gruß Florian

Aquafish007

Bastler vor dem Herrn

  • "Aquafish007" started this thread
  • info.dtcms.flags.de

Posts: 1,275

Location: Bergisch Gladbach

Occupation: Biotechnologe

wcf.message.sidebar.activityPointsPerDay

Thanks: 23

  • Send private message

4

Thursday, August 29th 2013, 11:45am

Hallo Florian,

nee, dafür braucht man kein Relay-Board. Man benötigt nur ein Motor drive shield (am Besten eins für 4 Pumpen) und ein Netzteil. Da gibts bei den Chinesen ganz viele. Wie z.B. von SainSmart.

Aquafish007

Bastler vor dem Herrn

  • "Aquafish007" started this thread
  • info.dtcms.flags.de

Posts: 1,275

Location: Bergisch Gladbach

Occupation: Biotechnologe

wcf.message.sidebar.activityPointsPerDay

Thanks: 23

  • Send private message

Florian

Beginner

    info.dtcms.flags.de

Posts: 54

Location: Viersen

Occupation: Elektriker

wcf.message.sidebar.activityPointsPerDay

  • Send private message

6

Thursday, August 29th 2013, 12:30pm

Weil ich das immer über ein Relay Board gemacht habe und bin da bis jetzt immer gut mit aus gekommen.
Naja ich schalte das aber auch über mein Raspberry.
Gruß Florian

This post has been edited 1 times, last edit by "Florian" (Aug 29th 2013, 12:32pm)


Aquafish007

Bastler vor dem Herrn

  • "Aquafish007" started this thread
  • info.dtcms.flags.de

Posts: 1,275

Location: Bergisch Gladbach

Occupation: Biotechnologe

wcf.message.sidebar.activityPointsPerDay

Thanks: 23

  • Send private message

7

Thursday, August 29th 2013, 12:35pm

Kann man natürlich auch machen, ist aber nicht nötig. Bei einem Mtor shield kann man allerdings auch Pumpgeschwindigkeit und Drehrichtung schalten.

Hecht

Düsentrieb

    info.dtcms.flags.de

Posts: 3,552

Location: DÜsseldorf

Occupation: ZTM

wcf.message.sidebar.activityPointsPerDay

Thanks: 9

  • Send private message

8

Thursday, August 29th 2013, 12:43pm

Volker :6_small28:

shy

Trainee

Posts: 134

wcf.message.sidebar.activityPointsPerDay

Thanks: 1

  • Send private message

9

Thursday, August 29th 2013, 12:51pm

Hallo Volker,

also an einer Schritt für Schritt Erklärung samt Bildern für Neueinsteiger in die Materie gibts es sicherlich sehr viel Interesse! Vielen Dank schon einmal für deine Bemühungen!

MfG Norman

saddevil

Professional

    info.dtcms.flags.de

Posts: 1,445

Location: Genthin

Occupation: Entwickler

wcf.message.sidebar.activityPointsPerDay

Thanks: 31

  • Send private message

10

Thursday, August 29th 2013, 6:40pm

hi

hab was ähnliches gebastelt ..
das ganze hängt an einem BUS- System ( UART - basierend )
8 Ausgänge für Pumpen
integrierter 12V Schaltregler ( max 1A )
gibt eine kalibrierfunktion ...
dann werden nur die benötigten mengen in ml angegeben
saddevil has attached the following image:
  • IMAG0217.jpg
Dirk

Aquafish007

Bastler vor dem Herrn

  • "Aquafish007" started this thread
  • info.dtcms.flags.de

Posts: 1,275

Location: Bergisch Gladbach

Occupation: Biotechnologe

wcf.message.sidebar.activityPointsPerDay

Thanks: 23

  • Send private message

11

Thursday, August 29th 2013, 10:08pm

So in etwa würde das Initialprogramm dann aussehen:

[http://youtu.be/0WqGD90mcVc


Hier ist jetzt noch kein Motorshield im Einsatz. Hier wird nur ein Arduino Mega, keypad LCD LCD und RTC-Modul (Real Time Clock, also eine Uhr mit Batterie) verwendet.

Mit einem USB Kabel wird der Arduino mit dem PC zum Upload des Programmes verbunden, dazu aber später mehr. Das Gute hierbei ist, der Controler wird gleichzeitig über USB mit Strom versorgt.
Alternativ steht später natürlich noch der vorhandene separate Netzstecker am Arduinoboard bereit.

Aquafish007

Bastler vor dem Herrn

  • "Aquafish007" started this thread
  • info.dtcms.flags.de

Posts: 1,275

Location: Bergisch Gladbach

Occupation: Biotechnologe

wcf.message.sidebar.activityPointsPerDay

Thanks: 23

  • Send private message

Stefan

Plexiglas-Designer

Posts: 598

Location: Geilenkirchen

Occupation: CNC-Lasertechnik/

wcf.message.sidebar.activityPointsPerDay

Thanks: 1

  • Send private message

13

Friday, August 30th 2013, 6:28am

:6_small28: :6_small28: :6_small28: :6_small28: :6_small28:
das ist cool. da hätte ich doch mal wieder was zum basteln, wofür ich ein schönes kleines gehäuse lasern könnte :2_small9:
Gruß Stefan

TorstenH

Trainee

Posts: 137

wcf.message.sidebar.activityPointsPerDay

  • Send private message

14

Friday, August 30th 2013, 10:09am

Hallo
Super kommt gerade richtig habe sogar schon alle Teile hir liegen, muss mir nur noch das Display mit Tasten und das motorschield bestellen. Ich hatte schon versucht das selber hin zu bekommen aber leider bekomme ich das alles zusammen nicht ans laufen. Einzelne Teile ja aber alles zusammen nicht.

Danke noch mal für deine Mühe Mfg Torsten

Gesendet von meinem GT-N8000 mit Tapatalk 2

Aquafish007

Bastler vor dem Herrn

  • "Aquafish007" started this thread
  • info.dtcms.flags.de

Posts: 1,275

Location: Bergisch Gladbach

Occupation: Biotechnologe

wcf.message.sidebar.activityPointsPerDay

Thanks: 23

  • Send private message

15

Friday, August 30th 2013, 10:22am

Hallo Torsten,


das bekommen wir schon hin.

Alternativ geht auch folgendes:

http://www.lipoly.de/index.php?main_page…eyword=keyboard


Das benutze ich für meinen Riffcomputer, weil es sich besser ins Gehäuse basteln lässt. Man muss nur die Knopfbelegung anpassen.

Und dazu halt ein HD44780, 2004 (also 20x4) LCD oder 16x2 ohne Keypad.

http://www.ebay.de/sch/i.html?_trksid=p2…cat=0&_from=R40


Wenn man sich dazu ein I2C LCD Backpack holt (gibts meisstens in der Bucht auch als Kombi) dann spart man sich einige Ports, weil alles mit nur 2 Pins (man sagt zu I2C auch two wire) gesteuert wird. Dafür gibts dan eine separate Library. Man verwendet dann nicht mehr die Liquid Crystal Library sondern diejenige mit dem Zusatz I2C.
Aber für den Anfang kann man natürlich auch erstmal mit dem fertigen Kombi LCD beginnen, weil die Tasten schon direkt drauf sind.

Aquafish007

Bastler vor dem Herrn

  • "Aquafish007" started this thread
  • info.dtcms.flags.de

Posts: 1,275

Location: Bergisch Gladbach

Occupation: Biotechnologe

wcf.message.sidebar.activityPointsPerDay

Thanks: 23

  • Send private message

16

Friday, August 30th 2013, 10:34am

Wer schon eingermaßen Fit ist kann schonmal mit dem Dosierpumpensketch rumspielen. Dazu gibts die Library für die Uhr, also das RTC-Modul von Henning Karlsen die einfach mit durch die vorhandene ersetzt wird (am Besten macht ihr aber eine Sicherheitskopie der vorhandenen!).

Diese Library ist deswegen so interessant, weil sie es uns ermöglicht, jeden Pin des Boards zu benutzen. Man ist nicht auf die beiden Pins für SDL und SCA angewiesen. So stehen uns die beiden Ports SDA und SCL (Arduino Uno: Digital 4 und 5; Mega: Digital 20 und 21) für andere wichtigere Dinge bereit wie z.B. eine LCD Benutzung via I2C Backpack.

Man muss im Code nur die beiden Pins 20,21 mit anderen Pins, die man benutzen möchte umbenennen. Ich verwende zum Beispiel ganz gerne Digital-Pin 40 und 41.


Im Ürbrigen habe ich die Library ein bißchen modifiziert, sodass die deutsche Übersetzung der Tage angezeigt werden.

Ansonsten werde ich dann mal in Kürze anfangen im Schnellverfahren die wichtigsten Basics zu erklären und eine Bauanleitung zu erstellen.
Aquafish007 has attached the following files:

TorstenH

Trainee

Posts: 137

wcf.message.sidebar.activityPointsPerDay

  • Send private message

17

Friday, August 30th 2013, 2:04pm

Hallo
Super das teil von lipoy habe ich gesucht, jetzt nur noch das teil für i2c Ansteuerung, , für das Display. Ich habe immer mit den normalen Displays rumgespielt, und auch einige Sketche aus dem Netz durchprobiert, leider habe ich es durch die Verwendung des i2c Anschluss nicht hingekommen.
Dann werde ich heute noch ein paar Teile bestellen, ich dosiere zur Zeit jeden Tag per Hand, das nerft langsam.
Mfg Torsten

Gesendet von meinem GT-N8000 mit Tapatalk 2

TorstenH

Trainee

Posts: 137

wcf.message.sidebar.activityPointsPerDay

  • Send private message

18

Friday, August 30th 2013, 2:36pm

Hallo
Habe gerade mir mal Sketch angeschaut, ich sehe gerade das ich eine math.h brauche. Habe schon danach im Netz geschaut ich finde sie nicht zum download. Ist es möglich das du alle erforderlichen Libraries online stellst. Die neue DS1307 habe ich schon im Libraries Ordner.

das sind die Fehlermeldungen die ich bekomme :115E17~112:

Danke Torsten

Dosierpumpe_20130827:19: error: 'Time' does not name a type
Dosierpumpe_20130827:21: error: 'Time' does not name a type
Dosierpumpe_20130827:11: error: 'DS1307' does not name a type
Dosierpumpe_20130827:30: error: 'Time' does not name a type
Dosierpumpe_20130827:77: error: 'Time' does not name a type
Dosierpumpe_20130827:89: error: 'Time' does not name a type
Dosierpumpe_20130827:101: error: 'Time' does not name a type
Dosierpumpe_20130827:113: error: 'Time' does not name a type
Dosierpumpe_20130827.ino: In function 'void setup()':
Dosierpumpe_20130827:141: error: 'rtc' was not declared in this scope
Dosierpumpe_20130827:150: error: 'Dosierung1' was not declared in this scope
Dosierpumpe_20130827:159: error: 'Dosierung2' was not declared in this scope
Dosierpumpe_20130827:168: error: 'Dosierung3' was not declared in this scope
Dosierpumpe_20130827:177: error: 'Dosierung4' was not declared in this scope
Dosierpumpe_20130827.ino: In function 'void loop()':
Dosierpumpe_20130827:195: error: 'Time' was not declared in this scope
Dosierpumpe_20130827:195: error: expected `;' before 'time'
Dosierpumpe_20130827:198: error: 'time' was not declared in this scope
Dosierpumpe_20130827:237: error: 'time' was not declared in this scope
Dosierpumpe_20130827:249: error: 'Dosierung1' was not declared in this scope
Dosierpumpe_20130827:250: error: 'Dosierung2' was not declared in this scope
Dosierpumpe_20130827:251: error: 'Dosierung3' was not declared in this scope
Dosierpumpe_20130827:252: error: 'Dosierung4' was not declared in this scope
display.ino: In function 'void Display(int)':
display:14: error: 'rtc' was not declared in this scope
display:18: error: 'FORMAT_SHORT' was not declared in this scope
display:33: error: 'Dosierung1' was not declared in this scope
display:48: error: 'Dosierung2' was not declared in this scope
display:63: error: 'Dosierung3' was not declared in this scope
display:78: error: 'Dosierung4' was not declared in this scope
menuWerte.ino: At global scope:
menuWerte:50: error: 'Time' does not name a type
menuWerte:156: error: 'Time' does not name a type
menuWerte.ino: In function 'void setDisplayDate(int, int, int)':
menuWerte:237: error: 'Time' was not declared in this scope
menuWerte:237: error: expected `;' before 't'
menuWerte:242: error: 't' was not declared in this scope
menuWerte:244: error: 't' was not declared in this scope
menuWerte:246: error: 't' was not declared in this scope
menuWerte:250: error: 't' was not declared in this scope
menuWerte:252: error: 't' was not declared in this scope
menuWerte:254: error: 't' was not declared in this scope
menuWerte:272: error: 'rtc' was not declared in this scope
menuWerte:272: error: 't' was not declared in this scope
menuWerte.ino: In function 'void setDisplayDow(int, int, int)':
menuWerte:292: error: 'Time' was not declared in this scope
menuWerte:292: error: expected `;' before 't'
menuWerte:297: error: 't' was not declared in this scope
menuWerte:309: error: 'rtc' was not declared in this scope
menuWerte:309: error: 't' was not declared in this scope
menuWerteSetzen.ino: In function 'void MenuWerteSetzen()':
menuWerteSetzen:22: error: 'rtcClock' was not declared in this scope
menuWerteSetzen:22: error: 'rtc' was not declared in this scope
menuWerteSetzen:23: error: 'setDisplayTime' was not declared in this scope
menuWerteSetzen:28: error: 'rtcClock' was not declared in this scope
menuWerteSetzen:28: error: 'setDisplayTime' was not declared in this scope
menuWerteSetzen:29: error: 'rtc' was not declared in this scope
menuWerteSetzen:84: error: 'Dosierung1' was not declared in this scope
menuWerteSetzen:84: error: 'setDisplayTime' was not declared in this scope
menuWerteSetzen:87: error: 'Dosierung1' was not declared in this scope
menuWerteSetzen:87: error: 'setDisplayTime' was not declared in this scope
menuWerteSetzen:150: error: 'Dosierung2' was not declared in this scope
menuWerteSetzen:150: error: 'setDisplayTime' was not declared in this scope
menuWerteSetzen:153: error: 'Dosierung2' was not declared in this scope
menuWerteSetzen:153: error: 'setDisplayTime' was not declared in this scope
menuWerteSetzen:216: error: 'Dosierung3' was not declared in this scope
menuWerteSetzen:216: error: 'setDisplayTime' was not declared in this scope
menuWerteSetzen:219: error: 'Dosierung3' was not declared in this scope
menuWerteSetzen:219: error: 'setDisplayTime' was not declared in this scope
menuWerteSetzen:282: error: 'Dosierung4' was not declared in this scope
menuWerteSetzen:282: error: 'setDisplayTime' was not declared in this scope
menuWerteSetzen:285: error: 'Dosierung4' was not declared in this scope
menuWerteSetzen:285: error: 'setDisplayTime' was not declared in this scope

Aquafish007

Bastler vor dem Herrn

  • "Aquafish007" started this thread
  • info.dtcms.flags.de

Posts: 1,275

Location: Bergisch Gladbach

Occupation: Biotechnologe

wcf.message.sidebar.activityPointsPerDay

Thanks: 23

  • Send private message

19

Friday, August 30th 2013, 2:36pm

Das Keypad ist eigentlich von DFrobot, allerdings haben die das nicht mehr im Angebot auf der HP. Schade eigentlich. Dafür gibts bei denen jetzt größere Einbaukeypads.

Ich werde hier allerdings erstmal alles ohne das I2C LCD Backpack erklären. Wer es unbedingt mit I2C machen möchte kann es gerne machen. Ist halt ein zusätzliches Bauteil was Geld kostet. Wer es allerdings schon hat kann froh sein, denn es ist schon eine echte Erleichterung.

Aquafish007

Bastler vor dem Herrn

  • "Aquafish007" started this thread
  • info.dtcms.flags.de

Posts: 1,275

Location: Bergisch Gladbach

Occupation: Biotechnologe

wcf.message.sidebar.activityPointsPerDay

Thanks: 23

  • Send private message

20

Friday, August 30th 2013, 4:10pm

Hallo Torsten,

Papperlapapp, entpacke die gesamte Zip in einen Ordner. Dann öffnest Du "Dosierpumpe_20130827", alle anderen Files die benötigt werden öffnen sich dann automatisch in Arduino.

Wichtig: Alles Files müssen unbedingt im selben Ordner sein, sonst findet die SW nicht die dazugehörigen Files.

Du hast wahrscheinlich das falsche File geöffnet!

math brauchst du nicht!

This post has been edited 1 times, last edit by "Aquafish007" (Aug 30th 2013, 4:11pm)


Social bookmarks

Counter:

HTML Editor - Full Version
Hits today: 16,278 Clicks today: 41,884
Average hits: 20,390.12 Clicks avarage: 49,276.19