User-Vorstellung mit Problem(en)
Verfasst: Donnerstag 16. Februar 2017, 17:36
Moin,
ich hätte da gerne mal ein Problem!
Ich, Feuerfurzer (der Name ist Programm
), Maschinenbautechniker mit div. Elektrokenntnissen, würde mich als neugierigen Neuling in Sachen (Python)-Programmierung bezeichnen. Nachdem ich Ende 2016 entdeckt habe, dass es da einen kleinen Taschencomputer zum spielen (und mehr) gibt, bin ich seither in diversen Foren unterwegs und lese fleißig mit, was mit dem Teil so geht. Diverse Fachliteratur eingeschlossen! Lange Rede, ich bin leicht infiziert, aber offnsichtlich zu alt oder zu resistent um das alles (programmiertechnisch) zu verarbeiten, was ich da so gesehen und gelesen habe. Muss auch gar nicht sein denke ich, man soll ja langsam anfangen, oder ist das schon der falsche Ansatz!? Dann lasse ich es lieber gleich bleiben, aber noch bin ich hoch motiviert!
Hab' mir also ein Projekt ausgedacht, welches ich nun partout umsetzen möchte und nun, man ahnt es schon, kläglich scheitere bzw. schon fest hänge!
Zum Thema:
Es soll so etwas wie ein "Sortierer" sein!? Teile in Karton zählen, Karton autom. wechseln, neu einzählen, vorherigen (vollen) Karton manuell entnehmen, neuen Karton bereitstellen, quittieren, neuen (vollen) Karton entnehmen, neuen bereitstellen, quittieren, etc. ...
Das ist erst einmal das "Gerüst", die Feinheiten hebe ich mir evtl. für später auf, will auch nicht mit zu viel Prosa langweilen!
Hier einmal mein Anfang und wenn ich Anfang sage, meine ich Anfang
:
So weit, so gut, jetzt sollte es aber wieder von vorne losgehen, bzw. bevor der zweite Karton befüllt ist, sollte der erste entnommen worden sein und eine (Quittier-)Taste gedrückt werden, um count_Kart1 wieder auf 0 setzen. Hier hört es dann schon auf bzw. stehe vielleicht auch nur auf dem Schlauch :K !? Ich habe schon mit "if Taster gedrückt, dann Zähler Null" experimentiert, aber nix da, tut nicht!
Sollte sich jemand finden, der nicht mit "rtfm" daherkommt, sondern gewillt ist mir, mit dem ein oder anderen Tipp, zur Seite zu stehen, so würde mich das wieder sehr aufbauen!
Natürlich interessieren mich fragen wie:
- Würdet ihr genau so anfangen?
- Ist die Struktur (sofern man eine erkennen kann!) ok?
- Wie könnte es weiter gehen?
- etc.
So, jetzt lass ich mich mal überraschen
!
Gruß
FF
ich hätte da gerne mal ein Problem!
Ich, Feuerfurzer (der Name ist Programm

Hab' mir also ein Projekt ausgedacht, welches ich nun partout umsetzen möchte und nun, man ahnt es schon, kläglich scheitere bzw. schon fest hänge!
Zum Thema:
Es soll so etwas wie ein "Sortierer" sein!? Teile in Karton zählen, Karton autom. wechseln, neu einzählen, vorherigen (vollen) Karton manuell entnehmen, neuen Karton bereitstellen, quittieren, neuen (vollen) Karton entnehmen, neuen bereitstellen, quittieren, etc. ...
Das ist erst einmal das "Gerüst", die Feinheiten hebe ich mir evtl. für später auf, will auch nicht mit zu viel Prosa langweilen!
Hier einmal mein Anfang und wenn ich Anfang sage, meine ich Anfang

Code: Alles auswählen
#Sortierer.py
from RPi import GPIO
from time import sleep
GPIO.setmode(GPIO.BCM)
GPIO.setup(18, GPIO.IN) #Lichtschranke "Kartusche vorhanden"
GPIO.setup(17, GPIO.OUT) #Relais Karton "Umschalt Karton 1/2"
GPIO.setup(27, GPIO.OUT) #Leuchte "Karton fast voll"
GPIO.setup(22, GPIO.OUT) #Leuchte "Karton 1 voll"
GPIO.setup(6, GPIO.OUT) #Leuchte "Karton 2 voll"
GPIO.setup(5, GPIO.IN) #Taster "Quittieren"
GPIO.output(17, 0) #Grundstellung = Karton 1 wird befuellt
GPIO.output(27, 0) #Leuchte aus
GPIO.output(22, 0) #Leuchte aus
GPIO.output(6, 0) #Leuchte aus
count_Kart1=0
count_Kart2=0
while count_Kart1 == 0:
#Karton 1 wird befuellt
while count_Kart1 <= 7:
GPIO.output(17, 0)
GPIO.output(27, 0)
if GPIO.input(18):
count_Kart1 += 1
print(count_Kart1)
sleep(0.05)
while GPIO.input(18):
sleep(0.05)
GPIO.output(17,0)
#Warnung "Karton 1 fast voll"
while count_Kart1 <= 9:
GPIO.output(17, 0)
GPIO.output(27, 1)
if GPIO.input(18):
count_Kart1 += 1
print(count_Kart1)
sleep(0.05)
while GPIO.input(18):
sleep(0.05)
GPIO.output(17,0)
#Karton 2 wird befuellt
while count_Kart2 <= 7:
GPIO.output(17, 1)
GPIO.output(22, 1)
GPIO.output(27, 0)
if GPIO.input(18):
count_Kart2 += 1
print(count_Kart2)
sleep(0.05)
while GPIO.input(18):
sleep(0.05)
GPIO.output(17,1)
#Warnung "Karton 2 fast voll"
while count_Kart2 <= 9:
GPIO.output(17, 1)
GPIO.output(27, 1)
if GPIO.input(18):
count_Kart2 += 1
print(count_Kart2)
sleep(0.05)
while GPIO.input(18):
sleep(0.05)
GPIO.output(17,1)
#Stoerung: "Karton 1 und 2 voll"
while count_Kart2 == 10:
GPIO.output(17, 0)
GPIO.output(22, 1)
GPIO.output(27, 1)
GPIO.output(6, 1)
GPIO.cleanup()
Sollte sich jemand finden, der nicht mit "rtfm" daherkommt, sondern gewillt ist mir, mit dem ein oder anderen Tipp, zur Seite zu stehen, so würde mich das wieder sehr aufbauen!
Natürlich interessieren mich fragen wie:
- Würdet ihr genau so anfangen?
- Ist die Struktur (sofern man eine erkennen kann!) ok?
- Wie könnte es weiter gehen?
- etc.
So, jetzt lass ich mich mal überraschen

Gruß
FF