• Herzlich willkommen!

    Das Team von »Doctor Brick« heißt Euch herzlich willkommen und wünscht Euch viel Spaß hier!
    »Doctor Brick« ist eine anerkannte Community (RLOC) für erwachsene LEGO Enthusiasten, auch AFOLs (= Adult Fans Of LEGO) genannt.
    Wir können uns hier über alle Belange des LEGO Hobbys austauschen wie z.B. Set- und Teilefragen, Vorstellung und Rezensionen von Legobauten.
    Bitte beachtet die Nutzungsbedingungen und den Verhaltensleitfaden.

Lego Spike Prime / Essential

gatewalker

Urgestein
Registriert
7 Okt. 2018
Beiträge
1.765
Ort
Niederösterreich Bezirk Zwettl
Danke.
Und Danke für das Video. Das hatte ich schon vor einige Wochen bei mir ausprobiert und dabei sogar glücklicherweise die py datei von einem meiner Projekte kopiert.
Und darin wird das mit async gelöst

Ein Auschnitt davon
Code:
import hub
from runtime import VirtualMachine
from runtime.extensions import SoundExtension
from util.constants import NUMBER, STRING
from util.scratch import clamp, compare, convert_image, get_variable, number_color_to_rgb
from util.sensors import get_sensor_value

# Procedures definition
async def proc(vm, stack):
    yield
    # Led image
    vm.system.display.show(hub.Image(convert_image("00x000xxx0x0x0x00x0000x00", vm.store.display_brightness())), clear=False)
    # Control wait
    yield 300
    # Led image
    vm.system.display.show(hub.Image(convert_image("0xxx0x0x0x00x0000x0000000", vm.store.display_brightness())), clear=False)
    # Control wait
    yield 300
    # Led image
    vm.system.display.show(hub.Image(convert_image("x0x0x00x000000000x000xxx0", vm.store.display_brightness())), clear=False)
    # Control wait
    yield 300
    # Led image
    vm.system.display.show(hub.Image(convert_image("00x000000000x000xxx0x0x0x", vm.store.display_brightness())), clear=False)
    # Control wait
    yield 300
    # Led image
    vm.system.display.show(hub.Image(convert_image("0000000x000xxx0x0x0x00x00", vm.store.display_brightness())), clear=False)
    # Control wait
    yield 300

Möglicherweise wirds aber durch das Firmwareupdate schon etwas anders gemacht, schau ich mir aber nochmal an.
 

RR76

Urgestein
Registriert
8 Apr. 2019
Beiträge
1.147
Jetzt müsste es nur noch einen Trick geben damit das auch auf den PU Hubs funktioniert.
 

RR76

Urgestein
Registriert
8 Apr. 2019
Beiträge
1.147
Dafür gibt's nur leider noch keinen Zeitansatz.
Aber wenn es fertig ist sind selbstlenkende Trailer oder der Zug, der auch ohne Tablet im Pendelverkehr fährt, kein Problem mehr.
 

gatewalker

Urgestein
Registriert
7 Okt. 2018
Beiträge
1.765
Ort
Niederösterreich Bezirk Zwettl
Kleines Update:

Hab mir den kleinen Winkelmotor vom Spike essential Set geholt.
Er funktioniert sowohl am Spike als auch am Technic hub.
Er funktioniert mit Pybricks in meinem Nachlauflenkungsprogramm normal wie die großen winkelmotoren.

Er funktioniert teilweise mit BC2: Das servoprogramm wird akzeptiert, er fährt auch automatisch an seinen echten 0-Punkt ohne kalibieren. Das Kalibrierprogramm von BC2 funktioniert auch einwandfrei.
ABER als Servo geht er nicht. Da dreht er immer weiter. Dürfte aber auch ein fehler im Programm sein weil das gleiche unerwünschte Verhalten tritt auch bei den großen Winkelmotoren auf.
Getestet mit einem EiPhone.

Zur Hardware:
Die Kreuzachse ist nur auf einer Seite, kein "durchgang" wie bei den großen Winkelmotoren
Nicht viel kraft, hat ein Getriebespiel von ca +-3 Grad, der Winkelsensor ist +-1 Grad
Wenn er angesteuert wird kann man ihn leicht blockieren, bei einer Lenkung als Servo auf ebener fläche wirds wohl gehen, bei Unebeheiten gibt er nach.

in meinem Nachlauflenkungsprogramm als Winkelsensor geht er recht gut, man merkt aber noch einen leichten wiederstand vom Motor.

Zur Drehzahl:
Entgegen dem offiziellen Datenblatt bringt er fast die gleichen Drehzahl bei geringer Last an einem City Hub zusammen wie ein mittlerer Winkelmotor. Könnte dann vieleicht daran liegen daß er im Spike Essential Hub mit weniger Spannung (max 3-6V laut Datenblatt des Motor) angesteuert wird.

Fazit:
Als reiner Winkelsensor missbraucht zu teuer.
Als Servo mit BC2 momentan nicht nutzbar.
Als reiner Motor geht er, aber das kennen wir von Lego schon kleiner mit dem roten Micromotor.
Und Falls jemand keinen Winkelsensor braucht aber eben klein und mit viel mehr Kraft dann gibts bessere alternativen von BrickEngine oder auch von CADA (hier muss man aber das Kabel umlöten)

EDIT: Winkelspiel nachgemessen und korrigiert, Drehzahl hinzugfügt.
 
Zuletzt bearbeitet:

Ts__

Eisenbahner
Registriert
6 Jan. 2016
Beiträge
2.543
Ort
Zwickau / Sachsen
Die Kreuzachse ist nur auf einer Seite, kein "durchgang" wie bei den großen Winkelmotoren
der mittlere Winkelmotor und der große Winkelmotor haben auch keine "durchgehende" Kreuzachse. Man kann aber auf beiden Seiten jeweils eine Kreuzachse ein Stud reinschieben, aber nicht durch schieben.
Ich denke aber, du meinst, man kann nur auf einer Seite eine Kreuzachse reinschieben.

Sonst danke fürs testen, den kleinen muss ich mir auch noch besorgen, wer weis, wo der mal nützlich ist.

Thomas
 
Oben