Forum: Mikrocontroller und Digitale Elektronik Stückzahlen über Lichtschranke zählen


von Benjamin Färber (Gast)


Lesenswert?

Grüß Gott,

Hätte ein paar Fragen in die Expertenrunde und zwar ich muss in der 
Arbeit Stückzahlen aufnehmen und das soll alles über Lichtschranken und 
einer Steuerungen (Controllino mega). Programmierung passiert über C 
normalerweise.

Ist das Möglich? Und wie muss die Lichtschranke angeschlossen werden?
Und kann ich die Stückzahlen in einer csv.Tabelle speichern, dass ich 
mir die Stückzahlen auf dem Computer anschauen kann?

Schon mal Danke für euere Hilfe

Schönen Gruß
Benni

von Tino K. (blumengiesser)


Lesenswert?

Mit solchen Fragen kommst du hier nicht weit.

Viel Glück beim rumprobieren, viel Erfolg beim Tutorial durcharbeiten...

von Beast (Gast)


Lesenswert?

Wenn du auf der Arbeit nur mit dem Controllino mega und einem fertigen 
Programm arbeiten sollst, dann werden sich die Leute dort ja schon was 
gedacht haben.
Was soll denn gezählt werden, läuft das auch einzelnd durch die 
Lichtschranke, gibt es das Programm + Hardwareaufbau, oder bist du der 
Entwickler???

Gruß
Beast

von Benjamin Färber (Gast)


Lesenswert?

Servus,

ich bin der Entwickler. Ich soll Blisterverpackungen zählen.
Ich muss die komplette Schaltung aufbauen und Programm selber schreiben.

Gruß Benni

von Ich (Gast)


Lesenswert?

Welche Vorkenntnisse hast du denn als Entwickler? Software/Hardware?

von Benjamin Färber (Gast)


Lesenswert?

3. Ausbildungjahr Systemelektroniker

von Benjamin Färber (Gast)


Lesenswert?

Den Controllino wird ja in C - programmiert, das kenn ich ein wenig von 
der Schule

von Ich (Gast)


Lesenswert?

Benjamin Färber schrieb:
> 3. Ausbildungjahr Systemelektroniker

Dann solltest Du ja inzwischen in der Ausbildung gelernt haben, wie man 
ein solches Problem angeht :)

von Benjamin Färber (Gast)


Lesenswert?

Ich bräuchte nur ein wenig Tipps :)

von Ich (Gast)


Lesenswert?

Hier wird erwartet, dass der Fragende eine gewisse Vorarbeit geleistet 
hat. Bei konkreten Problemen wird dann gerne geholfen.
Wobei man Dein Problem mit Copy&Paste ganz gut lösen kann. Gerade beim 
Auswerten einer Lichtschranke bist du nicht der Erste.

von TestX (Gast)


Lesenswert?

1. du bist noch kein entwickler :p ;)

2. wenn es an einem pc ausgewertet werden soll dann brauchst du einen 
controller mit entsprechenden schnittstellen. am einfachsten einen 
raspberry der eine csv liste auf einem netzlaufwerk (smb) pflegt. ein 
kleiner microcontroller ist damit überfordert bzw. ungeeignet

3. industrielichtschranken kaufen und an einen controller anschließen

4. ein programm in der programmiersprache deiner wahl schreiben, dass 
die impulse erfasst und irgendwo speichert (wenn es linux wird ist c 
hier nicht angebracht...mit python kommst du schneller und robuster zum 
ziel)

5. such dir hilfe in deiner firma. einer deiner kollegen wird sich schin 
etwas dabei gedacht haben..

von Benni (Gast)


Lesenswert?

@TestX

Warum beachtest du die Netiquette nicht?

Du hast einfach kein Recht anderen Vorhaltungen zu machen, solange du 
dich nicht an Regeln hältst die für das µCNet gelten. Besser dich!

von georg (Gast)


Lesenswert?

Benjamin Färber schrieb:
> Ich soll Blisterverpackungen zählen

Da ist als erstes zu klären, wie die vorliegen - ein Haufen auf dem 
Tisch, eine Kiste voll oder laufen die auf einem Fliessband vorbei?

Um mit einer Lichtschranke zu zählen, müssen sie einzeln sichtbar sein, 
keine Überlappungen. Ist das nicht so muss dafür gesorgt werden.

Ein "Entwickler" sollte wissen dass das eine wichtige Frage ist.

Georg

von michael_ (Gast)


Lesenswert?

TestX schrieb:
> 2. wenn es an einem pc ausgewertet werden soll dann brauchst du einen
> controller mit entsprechenden schnittstellen. am einfachsten einen
> raspberry der eine csv liste auf einem netzlaufwerk (smb) pflegt. ein
> kleiner microcontroller ist damit überfordert bzw. ungeeignet

Nicht basteln.

Er hat doch so etwas ähnliches vor sich:

https://www.conrad.de/de/sps-steuerungsmodul-controllino-mega-pure-100-200-10-1595718.html

Als erstes würde ich da mal das Handbuch durcharbeiten.

von Der Andere (Gast)


Lesenswert?

Benjamin Färber schrieb:
> Und kann ich die Stückzahlen in einer csv.Tabelle speichern, dass ich
> mir die Stückzahlen auf dem Computer anschauen kann?

Was soll dann in dieser Datei stehen?
1, 2, 3, 4, 5, 6, 7, ....

von Benjamin Färber (Gast)


Lesenswert?

Also erstmal dankeschön für euere Tipps :)))

Also die Blister laufen einzeln vorbei, daran liegt das Problem nicht.

In der Tabelle soll dann Uhrzeit - Linie - Stückzahlen stehen.

Ich entscheide mich deshalb für den Controllino, weil ich den in der 
Industrie einsetzen kann und weil ich den Controllino mit der Arduino 
Software programmieren kann.

Gruß Benni

von Beast (Gast)


Lesenswert?

Moin Benjamin,

geholfen haben wir nur in dem Sinne das wir nun deine Umgebung für das 
Modul kennen.

Benjamin Färber schrieb:
> Also die Blister laufen einzeln vorbei, daran liegt das Problem nicht.

Blister kenne ich nur von den Tablettenverpackungen, dort ist das Licht 
wegen der Alufolie hinten nicht durchscheinend, also der Aufbau mit 
Lichtschranke und einzelnen Blistern hintereinander machbar.
Wäre der Blister lichtdurchlässig müßte man schauen wie sich die 
Lichtintensität ändert (Streulicht).
Fragt sich wie schnell die Packungen da durchlaufen, vielleicht 
Zwischenbuffern, worauf willst du deine csv-Datei schreiben, wie stellt 
du sicher das die Datei auch geschlossen wird wenn etwas 
unvorhergesehenes geschieht (Spannung weg und nun?), ....

Gruß
Beast

von Bernd B. (microwave-designer)


Lesenswert?

Benjamin Färber schrieb:
> Also die Blister laufen einzeln vorbei

Hallo Benjamin,

ich habe schon Zählwerke gesehen, die nutzen die Lochung am 
Blisterstreifen. So eine Art Zahnrad greift in die Löcher und dreht eine 
Achse, die an ein Zählwerk angekoppelt ist.

Allerdings gibt es unterschiedliche Abstände der Löcher, die man dann 
berücksichtigen muss. Man könnte die Löcher optisch ermitteln oder 
mechanisch und dann anschließend elektronisch weitergehen.

Viel Erfolg beim Konstruieren und Forschen.

Bernd

von Amateur (Gast)


Lesenswert?

Das ist ein mehrschichtiges Problem.
1. In einer wahrscheinlich unruhigen Umgebung in Ruhe etwas zählen.
   Störungen rund um die Versorgung sind wohl zu erwarten. Wie
   störsicher das Teil ist wage ich erst gar nicht zu raten. Schnell
   findet man heraus, warum eine Siemens-SPS so teuer ist.
2. Über wahrscheinlich nicht gerade kurze Leitungen inkl. Lichtschranke
   kommt auch viel Mist rein.
3. Es klingt recht einfach: "Lichtschranke rein und gut ist", aber so
   einfach ist es auch nicht.
   Ruckelt der Transport, so sind Mehrfachzählungen vorprogrammiert.
   Am schönsten wird es, wenn ein Rückwärtsgang denkbar ist, oder wenn
   keine Zwischenräume (dicht an dicht) vorhanden sind.
   Blister sind oft Lichtbrechend, reflektierend und aus vielerlei
   Gründen (transparent) und somit nicht ganz einfach zu zählen.
4. Wenn das Teil nicht genügend Speicher hat und, was ganz wichtig ist,
   keinen Batteriepuffer besitzt, so kannst Du es auch nur entsprechend
   einsetzen.
5. In letzter Konsequenz müssen die Daten ja auch rauskommen. Das must
   Du aber vorbereiten.

Nur ein geringer Prozentsatz der Probleme, die noch auf Dich zukommen.

von MaWin (Gast)


Lesenswert?

Benjamin Färber schrieb:
> Ist das Möglich?

Sicher.

> Und wie muss die Lichtschranke angeschlossen werden?

Per Kabel.

> Und kann ich die Stückzahlen in einer csv.Tabelle speichern, dass ich
> mir die Stückzahlen auf dem Computer anschauen kann?

Nein. Ein Controllino hat kein Festpatte/USB-Stick/Ethernet-NAS.

von Amateur (Gast)


Lesenswert?

Noch was zum Thema zählen:

Lt. Bild, bei Conrad, hat das Teil einen USB und eventuell einen 
Netzwerkanschluss.

Auf den ersten Blick erscheint ein USB-Stick die Lösung zu sein. Aber 
nach Murphy, kommt, wenn Du den gerade Abgezogen hast, um ihn am PC 
auszulesen, ein weiterer Block zum Zählen. Uups.

Der ATMega hat zwar einiges an FLASH, aber ob das ausreicht, eine 
Netzwerkverbindung aufrecht zu erhalten kann ich nicht sagen. Eine 
Einfachstverbindung (unter Laborbedingungen), über die gelegentlich mal 
ein Byte geschoben wird, sollte ja kein Problem sein. Eine 
vollautomatische Verbindung mit ihren vielen "wenn’s", ist eine andere 
Sache. Voraussetzung ist auch, dass da, wo gezählt werden soll, ein 
Netzwerkanschluss vorhanden ist.

Noch was:
Auch wenn es im Labor klappt. Es sind immer wieder Eingriffe nötig. 
Sollte irgendetwas klemmen; im Rahmen einer Reparatur in die 
Lichtschranke gegriffen werden; definitiv ein Teil weniger/mehr gezählt 
werden; so muss eine hierzu passende Stopp- und Eingriffsmöglichkeit, 
vorgesehen werden. Das will auch noch programmiert werden.

Und, und und.

von Boris O. (bohnsorg) Benutzerseite


Lesenswert?

Amateur schrieb:
> Ruckelt der Transport, so sind Mehrfachzählungen vorprogrammiert.
>    Am schönsten wird es, wenn ein Rückwärtsgang denkbar ist, oder wenn
>    keine Zwischenräume (dicht an dicht) vorhanden sind.

Da greift man zur zweiten Lichtschranke und verlässt sich auf die 
korrekte Reihenfolge der Durchschreitung beider. Das Prinzip nennt man 
wohl Quadratur-Signal.

Mir ist immer noch nicht klar, warum eine CSV-Datei geschrieben werden 
soll. Das würde ich an jemanden delegieren, der sich mit soetwas 
auskennt. Das Zählgerät direkt vor Ort sollte nur einen zuverlässigen 
Zählimpuls generieren.

Ein Zeitstempel erfordert eine Uhr und davon kann es viele auf der Welt 
geben und die laufen meist noch unabhängig voneinander. Besonders 
interessant sind Datenverarbeitungssysteme, die Daten verarbeiten, die 
in der Zukunft liegen. Und manchmal wird die Uhr ja umgestellt. Wäre 
schade, wenn im Winter die Zählerstände mit der Wanduhr übereinstimmen, 
im Sommer hingegen nicht (oder umgekehrt).

An die CSV-Datei hinten anhängen geht nicht auf jedem Speichermedium 
ohne Zusatzaufwand. Die Zugriffsabstraktion muss ja für jeden 
Schreibvorgang öffnen und schließen, damit ein anderer Zugriff das 
abholen kann und nicht mittem im Schreibvorgang kaputte Zeichen liest.

Eine Pufferung könnte Sinn machen, d.h. Zählimpulse zu sammeln und bei 
der Abholung den internen Zähler wieder auf 0 zu setzen.

Aber wir wissen ja wieder nichts über die Zählfrequenz, 
Anschlussmöglichkeit/ Protokolle, übergeordnete Systeme, elektrische 
Anschlüsse…*seufz* Woher soll er auch wissen, was er denkt, bevor nicht 
jemand hier die richtige Frage stellt?

von georg (Gast)


Lesenswert?

Boris O. schrieb:
> Woher soll er auch wissen, was er denkt, bevor nicht
> jemand hier die richtige Frage stellt?

Dazu muss man erst mal denken. Das Forum ist dafür kein Ersatz.

Der TO hat da zwei grosse Problemkomplexe:

1. Die Messung und Zählung unter den gegebenen Umständen zuverlässig zum 
Funktionieren zu bringen. Das wird nicht ohne Probieren abgehen.

2. Das ganze Gedöns mit der Übertragung der Ergebnisse an einen PC. Da 
gibt es unzählige Möglichkeiten, von einer seriellen Verbindung, was für 
die Messelektronik bei weitem am einfachsten ist, über Netzwerk oder 
gleich über Internet und Cloud (=Industrie 4.0), ohne Anspruch auf 
Vollständigkeit - da muss erst mal eine Entscheidung getroffen werden, 
die hat ja auch wesentlichen Einfluss auf die Hardware.

Georg

von Bernd B. (microwave-designer)


Lesenswert?

... übrigense, CSV oder comma separated value ist kein sooo großes 
Geheimnis. Einfach mal mit Excel eine Zahlentabelle als *.csv 
abspeichern und mit so etwas wie NotPäd ansehen.

Gruß

Bernd

von Andrew T. (marsufant)


Lesenswert?

MaWin schrieb:
> Nein. Ein Controllino hat kein Festpatte/USB-Stick/Ethernet-NAS.

Hmm, Hier steht das der Mega per LAN-Interface (eingebaut) ansprechbar 
ist:

https://shop.controllino.biz/controllino-mega.html

von Andrew T. (marsufant)


Lesenswert?

Boris O. schrieb:
> Ein Zeitstempel erfordert eine Uhr und davon kann es viele auf der Welt
> geben und die laufen meist noch unabhängig voneinander.

https://shop.controllino.biz/controllino-mega.html

RTC und LAN, also eine Uhr nutz- und umstellbar :)

von Beast (Gast)


Lesenswert?

Andrew T. schrieb:
> RTC und LAN, also eine Uhr nutz- und umstellbar :)

Oder sich die Uhrzeit aus dem Internet ziehen, und nur wenn das I-net 
weg ist von der RTC. Da braucht es dann aber wieder die 
Layer-Geschichten (TCP...), den Stack.

Gruß
Beast

von Bernd B. (microwave-designer)


Lesenswert?

Hallo Foristen,

das mit der Uhrzeit sollte man nicht so hochschaukeln. Es gibt Uhren-IC 
mit Stützbatterie (CR2032), die man gut auslesen kann (macht man in 
jedem PC). Auch eine Abweichung von der PTB-Zeit kann man gut und gerne 
1-mal pro Woche // Monat // Jahr // Lebensdauer d. Batterie // 
Menschheitsgeschichte aufschreiben und durch Differenzbildung 
herauskalibrieren.

Gruß

Bernd

von Andrew T. (marsufant)


Lesenswert?

Bernd B. schrieb:
> das mit der Uhrzeit sollte man nicht so hochschaukeln.

Das sehe ich auch. Das ist ein Detail, ist lösbar, aber wird hier in den 
Posts mal wieder als Showstopper hochgegeigt.


SCNR.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.