Lego hub to hub speed test with Pybricks beta software Boadcast.
The video show 6 hubs, 2x RI hub, 4x Technic hub. The master is the RI hub to broadcast a CMD to the 5 other Lego hubs. The LED 3x3 matrix is connected to the first TX RI hub, which lights up as soon as the command is passed on.
Furthermore, 2 sensors with LEDs are connected, the distance sensor to an RI hub and the color sensor to a Technic hub. In most cases, the LEDs all go on and off at the same time. This means that there is only a very small time difference between the different LEDs. However, I have found another place where there is a clear difference. The video was recorded at 50 frames per second. Whenever there is a visible delay of an extra frame, this corresponds to a delay between 0 and 20 msec. For example, you sometimes see that the LEDs have not yet reached full brightness. This means that that frame was not exposed for the full 20 msec. To better visualize this sequence, I repeated the same frame 50x at that location. We now clearly see that the RI hub responds much faster than the Technic hub. I've rendered those special extended frames with a constant tone.
Tags: fotoopa Lego Hub to hub Technic hub RI hub
Tags: fotoopa lego mindstorms spike speed test color sensor mindstorms 51515 colored balls txt and lego txt lego
Gripper Version 2.
In this version, the Z axis works much faster. It is now driven directly by the motor.
Tags: fotoopa Lego Spike Mindstorms Colored ball gripper Gripper
First small application of the Lego Mindstorms hub. I am also using parts from Fischertechnik for construction here. The base plate is a FT plate. To build FT and Lego parts together I made some adaptors via 3D printing. This way the grid problem between FT (15mm) and Lego (16mm) can be solved. You could also build this application with Lego parts only but that is not my intention. I was able to solve a number of problems during construction. To be able to use more FT modules I first have to cut the flat cables of all the motors and connect them via 6 pin connectors. This way I can increase the distance between hub and motor. Then I can also re-enable my interface which can listen to all Lego Uart signals. From that moment on I can let FT and Lego fully interact with each other.
The program is very simple.
Tags: fotoopa Lego Mindstorms Spike Sorting balls Fischertechnik Mindstorms 51515
Lego and Fischertechnik linked together.
All 6 ports of the Lego hub are connected to the DE0-Nano-Soc module. This allows all data from Lego to be monitored. Many results can be displayed via the Fischer TXT controller. This is done via a simple program with the RoboPro software. The TXT Controller has a very nice feature where you can make a logging of the signals. This allows you to visualize the data in real time on the PC screen. All lego ports operate at 115200 baud rate. On the Lego side, you do not need to write a program for this because the data logging is done at low level. This is the same data the hub receives from the motors and sensors.
I use the port hubE for serial data exchange between the two systems. Everything is written in Python because in blocks not everything is available. For this serial connection I do need to write a bit of software. A small problem is the configuration at the first startup of the program. Lego uses an auto config system so the port is not ready for serial connections. I need to place an additional delay. Once started up you would no longer need the delay. I now use a delay of 1sec for this. If nothing was found at startup Lego searches every 500 msec for a new configuration. Once you have configured the port as serial everything is solved.
In the Python example, I sent some commands to the FPGA module ($D5). The Pico-scope 2406B is also always connected to the FPGA module. The 4 scope channels can be selected from 4x8 signal sources via the keyboard on the module. This scope thus also has real-time access to all Lego data. I use this mainly for time analysis and for testing the Python programs. In the video you can see how the data is displayed in real time by the TXT. You can see the motor displacement, the motor speed and direction, the sensor distance and the status of the 4 LEDs on the sensor. The leds are turned on and off at certain times. You can see that in the Python program and in the video itself.
Tags: fotoopa Lego Mindstorms Spike Fischertechnik DE0-nano-soc FPGA