Hallo Leute. Ich habe da so ein Problem. Ich muss für die Schule eine Murmel Sortiermaschine machen und ich weiß einfach nicht wie ich die Programme dazu schreiben soll. Ps: Ich muss mit einem Basic Stamp Controller Arbeiten. Es sollte dann ungefähr so aussehen und Funktionieren: https://www.youtube.com/watch?v=F9h75kcUYdk Ich habe schon verstanden das es so Funktionieren soll: 1. LED anschalten. 2. Sensor messen. 3. LED ausschalten. 4. Motor zur Öffnung ausrichten. 5. Je nach Messergebnis nach im oder gegen den Uhrzeigersinn drehen. 6. Wiederholen. Aber wie soll ich dadurch ein Programm schreiben und was für einen Servomotor muss ich mir dazu kaufen ? Danke im Voraus.
:
Bearbeitet durch User
Main M. schrieb: > Ich muss für die Schule Definiere das mal bitte genauer. Main M. schrieb: > Ich habe schon verstanden das es so Funktionieren soll: Dann fang damit an. Schreibe kleine Testprogrämmchen die jeweils einen dieser Punkte können. Wenn du das hast dann kann man diese Programmteile mit der entsprechdenden Logik verbinden und ... voila hat man ein funktionierendes Programm.
Ja okay, aber wie Verbinde ich sie mit einander ?
Zeig doch erst mal deine kleinen Progamme. Heisst du zufällig Robin?
Nein, mein Name lautet Martin und bin aus Berlin. Ich kann nur die LEDs Programmieren das sie Blinken und dann dieses Wiederholen auch, aber die ganzen anderen Sachen verstehe ich nicht, oder wie man sie Verbinden sollte. Ich kann es schon machen aber wahrscheinlich total Falsch ...
Wir können dir hier nicht das Programm schreiben. 1. wissen wir nicht wie das aufgebaut ist und welche Bauteile du benutzt und wie die mit deinem µC verkabelt sind. 2. Haben (fast alle) keine Basic Stamp Umgebung oder Doku 3. "musst" du normalerweise in der Schule nichts machen, was du nicht soweit beigebracht bekommen hast das du es auch können müsstest. Wenn es trotzdem irgendwo hängt dann wird dir hier gerne geholfen, aber die meisten hier haben eine Allergie gegenüber Schüler/Studenten die sagen "ich muss, habe aber keine Ahnung, also macht das bitte für mich"
Main M. schrieb: > 4. Motor zur Öffnung ausrichten. Wieviele Sorten Murmeln gibt es denn? Wenn es nur 2 sind, würde ich mir den Motor sparen und einen Elektromagneten nehmen. Der wird wie eine LED angesteuert, nur mit einer Treiberstufe dazwischen (und einer Freilaufdiode). Es bleibt nur noch, den Sensor sinnvoll abzufragen und das Ergebnis (0 oder 1) auf den E-Magneten zu schicken.
Ja ich verstehe, meine Wortwahl habe ich unpassend gewählt. Im Nachhinein sehe ich das genauso. Ich möchte wirklich mein Problem lösen und nicht einfach nur das schnell hinter mich bringen. Ich gehe das Thema wirklich mit Leidenschaft an und möchte das auch in der Zukunft vertiefen. Ich möchte auch viele weitere Projekte während meinem Abitur und auch im Berufsleben angehen. Darum bräuchte ich hier Starthilfe, da ich in der Schule das Wissen nicht gut genug aufgenommen habe.
ja genau, ich müsste 2 Verschiedene Murmelarten automatisch Aussortieren lassen. Meine Vorstellung darüber sah aber so aus: https://www.youtube.com/watch?v=F9h75kcUYdk Okay und wie Kann ich es abfragen lassen mit diesem If und Then ?
Variante A) Du läßt Dir den ADC-Wert anzeigen und legst den Schwellwert in die Mitte der Werte für schwarz und weiß. Variante B) Das Programm ist selbst lernend. Es ließt die Werte ein und merkt sich min und max. Dann legt es die Schwelle dazwischen. Es kann dann sein, daß die ersten Murmeln falsch einsortiert werden, bis beide Farben die Lichtschranke passiert haben. Ein Servomotor ist die einfachste Lösung. Dessen Position läßt sich einfach über einen PWM-Ausgang setzen.
:
Bearbeitet durch User
Main M. schrieb: > Youtube-Video "Murmelsortieranlage mit BASIC Stamp 1" Ja, tolle Mechanik, aber eher langsame Verarbeitung. Der YTer verwendet ein Fernsteuerservo, das dann jeweils rechts und links dreht. Meine Lösung wäre eine Kugelbahn mit Weiche, bei der die Kugel über zwei Sensoren rollt (einmal 'Da kommt eine Kugel' und zum zweiten 'Die Kugel ist weiss') und dann die Weiche entsprechend stellen, die ein paar cm danach kommt. Dann entfällt die Ansteuerung des Servos, die mögl. in Basic etwas kompliziert ist, sondern es ist eine reine Abfrage auf digitale Eingänge und Ausgänge.
Main M. schrieb: > wie Kann ich es abfragen lassen mit diesem If und Then ? Seite 18: https://lehrerfortbildung-bw.de/u_matnatech/nwt/gym/weiteres/fb1/mikro/anleitunga_mikrocontroller210v4.pdf Seite 20: Analogwerte einlesen und verarbeiten
Okay, vielen Dank für Ihre großzügige Hilfe. Ich werde morgen ein Programm Formulieren und hier dann Entsprechend berichten.
Hallo ich bin es wieder und habe da jetzt was ausprobiert. Ich habe von einem Ferngesteuertes Spielzugauto den servo Motor raus genommen und werde ihn benutzen. Ich komme gar nicht weiter... ' {$STAMP BS1} OUTPUT 4 OUTPUT 5 MAIN: PIN5 = 1 PAUSE 500 PIN5 = 0 PAUSE 500 POT 5, 127, B0 DEBUG B0 GOTO MAIN END Wie soll ich da jetzt weiter Arbeiten ?
Main M. schrieb: > Wie soll ich da jetzt weiter Arbeiten ? zielorientiert Vielleicht solltest du im Programmcode Kommentare verwenden, um zu erläutern, was du mit den Befehlen bezweckst.
Ich versuche diesen Verlauf zu Bezwecken: 1. LED anschalten. 2. Sensor messen. 3. LED ausschalten. 4. Motor zur Öffnung ausrichten. 5. Je nach Messergebnis nach im oder gegen den Uhrzeigersinn drehen. 6. Wiederholen. Scheitere aber jedes mal oder komme nicht weiter ...
Die Ansteuerung eines Modelbauservos ist hier im Wiki beschrieben: https://www.mikrocontroller.net/articles/Modellbauservo_Ansteuerung. Leider kennt sich mit den Basic-Stamps wohl niemand hier wirklich aus, aber du suchst nach dem Begriff PWM für die Generierung des Ansteuerungssignals des Servos. Eine kurze Suche erbracht zumindest mal dieses Ergebnis (http://emesystems.com/OLDSITE/BS2PWM.htm). Mein Tipp, erzeuge erst mal mittels PWM ein Signal, schau dir das Signal mit einem Oszi oder Logic-Analyzer an (sofern in der Schule vorhanden) und vergleiche es mit der Signalform, welche im Wiki-Artikel beschrieben ist.
Eins nach dem anderen. Fange damit an, eine LED einzuschalten. Hast du eine LED und einen Vorwiderstand? Ist Dir klar, wie man diese Teile anschliesst? Ist Dir klar, wie man die LED einschaltet? Welche Unterlagen liegen Dir dazu vor?
Ich habe alles was ich benötige dafür und des sollte dann so Funktionieren. https://www.youtube.com/watch?v=F9h75kcUYdk also das ist auch meine Vorstellung.
:
Bearbeitet durch User
Main M. schrieb: > Ich habe alles was ich benötige dafür und des sollte dann so > Funktionieren. Du hast meine Fragen nicht beantwortet. Du musst lernen, die Aufgabe in kleine Teilschritte zu zerlegen, sonst kommst du nicht voran. > Ist Dir klar, wie man diese Teile anschliesst? > Ist Dir klar, wie man die LED einschaltet? > Welche Unterlagen liegen Dir dazu vor?
Ja, mir ist klar das wie man die LED Anschliesst mehr aber auch nicht da ist es mehr so wie ich denke. Durch ein Programm mit PIN6 = 1 und PAUSE 500 und so etwas. Bei den anderen bin ich mir sehr unsicher.
Okay, ich helfe dir mit dem Zerlegen: - LED ansteuern (kannst du anscheinend) - Servo ansteuern (kannst du noch nicht) - Sensor auslesen (kannst du anscheinend auch noch nicht) Schreibe also drei Programme: Für jeden dieser Teil-Aufgaben ein Programm. Nichts dolles, einfach nur Motor dreht sich nach links, mal nach rechts. Wenn die alle funktionieren, meldest du dich nochmal und wir können wir dir helfen, diese Teile zu kombinieren.
Vielleicht eine andere Idee, da es sehr schwer ist, wirklich Grundlagen über ein Forum zu vermitteln: Besuche doch einfach Leute, die sich mit solchen Sachen gerne beschäftigen. Du wohnst ja in Berlin, da gibt es viele Möglichkeiten, besuche doch einmal einen Hackerspace https://wiki.hackerspaces.org/Berlin und da bekommst du sicher Hilfe oder dir erklärt jemand ein paar Grundlagen, die du benötigst. Ansonsten finde ich es eine coole Aufgabe, wo man einiges lernen kann. Bei den Murmeln nimmst du am Besten durchsichtige und undurchsichtige, dann wird es erstmal einfach :)
Ja für euch klingt das Einfach und ist wahrscheinlich sogar witzig das ich es nicht alleine meistern kann, aber für mich ist das eine Riesengroße Aufgabe.
RC Servo: Nehmen wir mal an, das das Servo an deinem Pin 6 hängt. Dann sollte dieses Unterprogramm es in die eine Richtung drehen:
1 | PIN6 = 1 |
2 | PAUSE 1 |
3 | PIN6 = 0 |
4 | PAUSE 19 |
5 | RETURN |
Vorrausgesetzt, PAUSE hat als Argument die Wartezeit als Millisekunden - dafür weiss ich zu wenig über den BASIC Stamp. Und dieses Unterprogramm gibt einen Puls für die andere Richtung:
1 | PIN6 = 1 |
2 | PAUSE 2 |
3 | PIN6 = 0 |
4 | PAUSE 18 |
5 | RETURN |
Diese Unterprogramme solltest du ein paarmal hintereinander aufrufen oder in einer FOR-NEXT Schleife, denn die Servos mögen einen kontinuierlichen Signalstrom.
:
Bearbeitet durch User
Narfie schrieb: > Leider kennt sich mit den Basic-Stamps wohl niemand hier wirklich aus, Kaum. Vor 20 Jahren habe ich so einen Set geschenkt bekommen und schnell wieder weggelegt. > aber du suchst nach dem Begriff PWM für die Generierung des > Ansteuerungssignals des Servos. Eine kurze Suche erbracht zumindest mal > dieses Ergebnis (http://emesystems.com/OLDSITE/BS2PWM.htm). Mein Tipp, > erzeuge erst mal mittels PWM ein Signal, schau dir das Signal mit einem > Oszi oder Logic-Analyzer an (sofern in der Schule vorhanden) und > vergleiche es mit der Signalform, welche im Wiki-Artikel beschrieben > ist. Nach meiner Erinnerung macht das keine echte PWM. Sondern die Frequenz wird irgendwie geändert. PWM habe ich dann mit dem AVR gemacht.
michael_ schrieb: > Nach meiner Erinnerung macht das keine echte PWM. Mit Google-Suche "basic stamp pwm" findet sich genug.
1 | Syntax: PWM Pin, Duty, Duration |
Ob das passt mag wer beurteilen, der die Hardware hat. leo
Main M. schrieb: > Ja für euch klingt das Einfach und ist wahrscheinlich sogar witzig das > ich es nicht alleine meistern kann, aber für mich ist das eine > Riesengroße Aufgabe. Die geordnete Nutzung der Shift-Taste wäre auch noch so ein Ding.
leo schrieb: > Mit Google-Suche "basic stamp pwm" findet sich genug.Syntax: PWM Pin, > Duty, Duration > Ob das passt mag wer beurteilen, der die Hardware hat. > > leo Eben, ich hab die Hardware. Werd aber den Teufel tun, diesen Mist wieder zu aktivieren. Und vor allem in der 1. Generation. Wie kommt man heute noch darauf, das zu verwenden? Lehrer eben. Und nicht nur Google-Theorie machen. Vor 20 Jahren brauchte ich PWM. Es sah gruselig auf dem Oszi aus. Eigentlich ist es ein PIC mit BASIC-Interpreter. Das Problem des TO wird nicht PWM sein. Es kann also gehen.
Leute, könnte jemand mir die einen Programme schreiben, weil ich glaube das des alles gar nicht viel ist und für euch einfach Kinderkram ist. Ich komme damit einfach gar nicht klar. Soll ich dann irgendwelche angaben noch berichten oder ?
Schicke mir die fertig aufgebaute Hardware, dann programmiere ich es Dir für 200€ ohne Gewährleistung. Mal im ernst: Wenn du es nicht kannst, dann breche das Projekt ab und melde den Misserfolg. Das gehört zum Erwachsen-werden dazu. Niemand muss alles können.
Lieber Martin, Wenn das ein Projekt für die Schule ist, dann wurden euch sicher die Grundlagen vermittelt. Wie man das Problem in überschaubare Teilprobleme zerlegt, wurde dir hier gesagt. Aber du willst diese Hilfe nicht annehmen, sondern willst, dass dir jemand das fertige Ergebnis liefert. Sollen wir vielleicht auch deine nächste Mathearbeit für dich schreiben? Du bist in der Schule, um was zu lernen. Und offenbar bist du nicht mal im Stande, dein Problem so darzustellen, dass ein Außenstehender dir helfen kann. Wenn du mit dem ganzen Thema völlig überfordert bist, dann bitte deinen Lehrer um Hilfe. Dazu sind sie da! Oder mach das, was Stefanus dir vorgeschlagen hat. Melde den Misserfolg. So ein Projekt dient dazu, den Lernerfolg der Schüler zu prüfen. Der scheint bei dir quasi Null zu sein. Und dafür gibt es dann auch zurecht ne 6.
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.