Lok24
10.09.2021, 16:49

Editiert von
Lok24
07.01.2023, 18:28

+8Pybricks Programmsammlung

Hallo zusammen,


Die unten genannten Programme funktionieren mit der neuen Version von Pybricks (3.2) leider nicht mehr.

----------------------------------------------------------------------------------------------------

hier möchte ich für alle Interessierten im Laufe der Zeit eine kleine Sammlung an Pybricks-Programmen aufbauen.
Sie sind fertig, es braucht nicht programmiert zu werden, solange man die Standardwerte nutzt.
Dazu später unten mehr.

Die Programme werden via Webbrowser fest in ein City-Hub oder Technic-Hub geladen, zum Betrieb ist dann kein SmartDevice oder ähnliches nötig.

Die Installation ist hier beschrieben.
Installation.pdf
Falls irgendwo noch auf beta.pybricks.com verwiesen wird: das ist nicht mehr sinnvoll, es läuft alles mit code.pybricks.com (Juli 2022)

Das ist bebildert und recht ausführlich, der Weg ist ganz grob:

Download & Save Programm (s.u)
Entpacken
Website von Pybricks öffnen
Eigenschaften setzen
Programm öffnen
Download Programm auf Hub


Derzeit verfügbare Programme

AutoBox Für City Hub + Fernbedienung
Schaltet 1-2 beliebige Motoren am Hub mit der Fernbedienung für eine einmal voreingestellte Geschwindigkeit.

Download AutoBox1.12.zip

Download Anleitung und Parameter.pdf

Wenn alles eingerichtet ist handelt es sich quasi um eine ferngesteuerte Akku-Box mit voreingestellter Geschwindigkeit.

Das Programm speichert den eingestellten Wert in der FB als Teil des FB-Namens.
(eigentlich sollte das im Hub gespeichert werden, da warten wir noch auf die Pybricks Programmierer um das zu ermöglichen, dann geht das auch ohne FB wird nicht unterstützt...) Irgendwann scheinbar doch....

Die Idee ist:
Hub mit FB koppeln, Geschwindigkeit einstellen, speichern.
Alles aus machen
Ab dann kann man immer wieder mit dem Hub und dieser(!) FB den Motor ein- und ausschalten, mit der gespeicherten Geschwindigkeit.

Features
- Regeln der Motorgeschwindigkeit via FB
- Starten und Stoppen mit der zuletzt gespeicherten Geschwindigkeit
- Speichern der aktuellen Geschwindigkeit
- Automatische Erkennung der Motoren
- Lastregelung bei Tacho-Motoren
- Motoren auch verschieden schnell drehend möglich
- Minimal- und Maximalgeschwindigkeit einstellbar
- Drehrichtung beider Motoren voreinstellbar
- Weiter Beschleunigen bei Festhalten der Taste (an und abschaltbar)
- Keine Fahrtrichtungsumkehr bei Überschreiten von Null
- Knöpfe frei den Funktionen zuzuordnen
- Einstellen der LED-Farben und Helligkeit von Hub und der FB



ShuttleTrain(Für City Hub + Fernbedienung)
Kontrolliert einen Zug mit Motor und Lichtsensor anhand von farbigen Abschnitten im Gleis

Download ShuttleTrain 1.4.zip

Download Anleitung und Parameter.pdf

Features
- Automatische Erkennung des Motors
- Lastregelung bei Tacho-Motoren
- Minimal- und Maximalgeschwindigkeit einstellbar
- Drehrichtung des Motos voreinstellbar
- Verbinden mit einer ganz bestimmten FB
- Einstellen der LED-Farben und Helligkeit von Hub und FB
- Pendelverkehr zwischen zwei Farbkacheln
- oder Kreisverkehr auf einem geschlossenen Oval
- Wartezeiten für beide Richtungen getrennt einstellbar
- Zug automatisch oder manuell nach Halt starten
- Umschaltung automatisch/manuell via FB, auch im laufenden Betrieb
- Tasten frei zuzuordnen

Achtung: ShuttleTrain derzeit im Test-Status

MotorControl (City Hub, Fernbedienung)
Steuert 1-2 beliebige Motoren am Hub mit der Fernbedienung
Download MotorControl 2.7.zip*

Download Anleitung und Parameter.pdf

Features:
- Automatische Erkennung der Motoren
- Lastregelung bei Tacho-Motoren
- Motoren auch verschieden schnell drehend möglich
- zwei verschiedene Beschleunigungsprofile, im Betrieb durch Tastendruck wählbar
- Minimal- und Maximalgeschwindigkeit einstellbar
- Drehrichtung beider Motoren voreinstellbar
- Weiter Beschleunigen bei Festhalten der Taste (an und abschaltbar)
- Keine Fahtrrichtungsumkehr bei Überschreiten von Null
- Knöpfe frei den Funktionen zuzuordnen
- Weiterfahren oder Anhalten bei Verlust der FB-Verbindung
- Verbinden mit einer ganz bestimmten FB
- Einstellen der LED-Farben und Helligkeit von Hub und FB
- Auch für Technik Hub geeignet (nur Port A und B)


(* wer die 2.5 im Einsatz hat: die kann nicht mehr fehlerfrei geladen werden, da sich der pybricks-code geändert hat; Wer seine 2.5 anpassen will:
In Zeile 251 muss es heißen:
speed_limit, acceleration_limit, torque_limit = Motor(port).control.limits()

Fragen und Anregungen sind willkommen, Testkandidaten sowieso

Grüße

Werner



Thomas52xxx , friccius , Heather , jpsonics , Gimmick , Ben® , JuL , tmctiger gefällt das (8 Mitglieder)


58 vorhergehende Beiträge sind ausgeblendet

Alle anzeigen Immer alle anzeigen Beitragsbaum

Lok24
10.01.2023, 17:22

Als Antwort auf den Beitrag von legobrain

Re: Pybricks Programmsammlung

legobrain hat geschrieben:

Hast du eine Idee, woran das liegt?

Ja, das Programm ist Murks
Bei mir tut es das nicht......
ich schaue nochmal drüber,morgen oder Freitag.
Danke für's Testen.



Lok24
10.01.2023, 17:32

Als Antwort auf den Beitrag von legobrain

Re: Pybricks Programmsammlung

Welchen Motor hast Du angeschlossen?



legobrain
10.01.2023, 19:04

Als Antwort auf den Beitrag von Lok24

Re: Pybricks Programmsammlung

Lok24 hat geschrieben:

Welchen Motor hast Du angeschlossen?


Den geregelten Tacho-Motor M "Mittlerer Linearmotor" 88008.

Auf deine Frage hin habe ich sicherheitshalber noch getestet mit:

"Technic Großer Motor" 88013
sowie der inzwischen nicht mehr erhältliche kleine Motor "Einfacher, mittlerer Linearmotor" 45303.

Alle mit dem gleichen Ergebnis.

Angeschlossen an den A-Port eines City-Hubs 88009. B-Port ist leer.

Viele Grüße!



Lok24
10.01.2023, 19:22

Als Antwort auf den Beitrag von legobrain

Re: Pybricks Programmsammlung

Recht herzlichen Dank.
Kannst Du das Programm mal aus dem Editor starten?
Dann bekommst Du im unteren Bereich die Geschwindigkeit angezeigt - und eine Fehlermeldung, vermutlich irgendwas mit Zeile 216 ....



legobrain
10.01.2023, 19:40

Als Antwort auf den Beitrag von Lok24

Re: Pybricks Programmsammlung

Lok24 hat geschrieben:

Recht herzlichen Dank.
Kannst Du das Programm mal aus dem Editor starten?
Dann bekommst Du im unteren Bereich die Geschwindigkeit angezeigt - und eine Fehlermeldung, vermutlich irgendwas mit Zeile 216 ....


Folgendes kam raus, ich hoffe es hilft dir weiter:


Init Timer 1
Init Timer 2
--
Port.A : BOOST Interactive Motor Motor 13.77 99
Port.B : not connected
Pybricks Hub
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-32
-33
-34
-35
-36
-37
-38
-39
-38
-37
-36
-35
-34
-33
-32
-31
-30
-29
-28
-27
-26
-25
-24
-25
-26
-27
-28
-29
-30
-31
-32
-33
-34
-35
-36
-37
-38
-39
-38
-37
-36
-35
-34
-33
-32
-31
-30
-29
-28
-27
-26
-25
-24
-23
-22
-21
-20
-19
-18
-17
-16
-15
-14
-13
-12
-11
-10
-9
-8
-7
-6
-5
0
Traceback (most recent call last):
File "neu1.py", line 381, in <module>
File "neu1.py", line 86, in function1
File "neu1.py", line 216, in drive
AttributeError: 'str' object has no attribute 'stop'



Lok24
10.01.2023, 19:45

Als Antwort auf den Beitrag von legobrain

+2Re: Pybricks Programmsammlung

legobrain hat geschrieben:

Folgendes kam raus, ich hoffe es hilft dir weiter:
File "neu1.py", line 216, in drive
AttributeError: 'str' object has no attribute 'stop'

Ja klar, habe ich doch gesagt in Zeile 216......
Ist eine Kleinigkeit, kriege ich bis zum WE hin, dann auch die ganze Story von mir und Pybricks!

THX



Thomas52xxx , Ben® gefällt das


legobrain
10.01.2023, 20:15

Als Antwort auf den Beitrag von Lok24

Re: Pybricks Programmsammlung

Lok24 hat geschrieben:

legobrain hat geschrieben:
Folgendes kam raus, ich hoffe es hilft dir weiter:
File "neu1.py", line 216, in drive
AttributeError: 'str' object has no attribute 'stop'

Ja klar, habe ich doch gesagt in Zeile 216......
Ist eine Kleinigkeit, kriege ich bis zum WE hin, dann auch die ganze Story von mir und Pybricks!

THX



Oh super, das freut mich zu hören! Ich bin dann darauf gespannt!
Lieben Dank :-)



Lok24
15.01.2023, 14:06

Als Antwort auf den Beitrag von Lok24

Editiert von
Lok24
15.01.2023, 14:27

+2Re: Pybricks Programmsammlung

Aloha,

so jetzt aber - hoffentlich.....

Probier's mal hiermit:
Download MotorControl2_9.zip


Was war passiert:
Das Programm war Murks, so sah es aus:
Motor(Port.A).run(300)

Das resultierte in Pybricks version 3.2 in einem
# OSError: [Errno 16] EBUSY: Device or resource busy

Es geht jetzt nur so:

example_motor = Motor(Port.A)
example_motor.run(300)


Das hatte ich dann auch so eingebaut.
Dabei habe ich noch einen anderen "Fehler" gefunden und versucht den auszumerzen - leider nur für zwei Motoren. Du hattest nur einen angeschlossen - Puff.

Leider beherrsche ich OOP und Python praktisch gar nicht, das macht das Programmieren schwierig

Das mit dem neuen Editor ist auch gewöhnungsbedürftig.... können die einzelnen offenen Programme Bezug aufeinander nehmen?



Thomas52xxx , JuL gefällt das


legobrain
16.01.2023, 21:44

Als Antwort auf den Beitrag von Lok24

Re: Pybricks Programmsammlung

Danke dir! Ich hoffe, ich komme morgen oder übermorgen dazu, es auszuprobieren.
Eine Frage vorab -


Lok24 hat geschrieben:


Dabei habe ich noch einen anderen "Fehler" gefunden und versucht den auszumerzen - leider nur für zwei Motoren. Du hattest nur einen angeschlossen - Puff.



Was genau meinst du damit? Was passiert, wenn nur ein Motor angeschlossen ist? Puff klingt gar nicht gut :-)



Lok24
17.01.2023, 08:56

Als Antwort auf den Beitrag von legobrain

Re: Pybricks Programmsammlung

legobrain hat geschrieben:

Was genau meinst du damit? Was passiert, wenn nur ein Motor angeschlossen ist? Puff klingt gar nicht gut :-)

ich habe mit zwei Motoren getestet, da lief mit 2_8 alles. Du hattest nur einen angeschlossen, deswegen ist es abgebrochen - Puff! Sonst nichts. Jetzt wird der Befehl noch für tatsächlich angeschlossene Motoren geschickt.



1 nachfolgender Beitrag ist ausgeblendet

Alle anzeigen Immer alle anzeigen

Gesamter Thread: