I build real LEGO robots. I'm a robotics engineer and teacher. I design custom LEGO models on commission: 1) industrial models and robotic systems for companies that want to stand out in trade shows 2) educational LEGO Technic and robotic models based on existing LEGO products, for STEM learning companies, camps, teachers 3) bespoke LEGO designs for corporate gifts and custom kits
You can also find tutorials to build and program LEGO robots with LEGO Education products (LEGO MINDSTORMS, LEGO SPIKE, LEGO WeDo), and LEGO BOOST.
Thanks! I initially thought of making just the mouth move, but by mistake I realized that the move would move if the stem was swinged forward fast enough!
Can I get a book for this? previous time, I had an experience to get the manual for EVA on your web site. It was an e-book version and it is hard to read with my children. So I want to find the book not e-book for this ;)
@@profBricks Ma lo so bene che sei un professore e che insegni robotica, caro Daniele, ci mancherebbe. Rimane però il fatto che manca effettivamente un epiteto per descrivere il tuo brillante genio creativo. Seguo tutti i tuoi video di robotica ed ho acquistato, oltre a qualche tuo modello, anche il tuo bellissimo libro sul set Lego Mindstorms Robot Inventor, quindi so bene di cosa sei capace. Ma la semplicità con cui hai modificato il set originale Lego della pianta carnivora, ottenendo quell'effetto così realistico, mi ha lasciato davvero di stucco !!! I miei complimenti, Maestro.
I usually get inspiration from the LEGO catalog and transform vehicles and other models into LEGO BOOST robots. The Space theme from this year is particularly inspiring!
Dear Prof. Bricks: I have built a robot with one color sensor that needs to both read the color (Blue or Green) and read the reflection between black/white line. As the mission requires both function, color reading and reflection functions cannot be used. (If I pick one, the other mission can't be accomplished.) So I decided to look at the raw color reading. A few surprises; when I read the color using the color sensor, I saw a rapid fluctuating value, even when the robot was staying put. This made programming the line-following logic even harder. (I am still trying to write one up as I write this down.) But the question here is; when I tried the raw color mode, the sensor would have one setting only. (R/ G/ B each, but wouldn't read all three at the same time.) Could you tell me how I can read all three raw colors simultaneously using python? Thanks in advance.
If you read raw RGB in the spike app, you can use R o the average of the three components as a reading to follow lines. If you want to use python, I suggest you use Pybricks. docs.pybricks.com/en/stable/pupdevices/colorsensor.html The documentation says you can retrieve HSV readings from the sensor, and you can use V to follow lines.
has anyone gotten the solver to work? We have built the machine and the software runs, but after scanning it says "Solution: Invalid cube configuration." Looking at the pybricks code output, it's clear that it has made a few mistakes in the scanning. We have two cubes and this is the case for both of them... I would love to inspect the source code to see if I can improve on the precision, but it seems to be hidden within the custom firmware. Any change you could share that @profBricks? Also thanks for a great set of instructions!
I've been debugging a bit now, and I have tried with two different, one official Rubik, one knockoff. With a program that just prints the HSV values, I get very robust readings from the sensor, so I suspect that my cubes have slightly different tints that yours, leading to erroneous readings. When running your program, I see the sensor not being 100% centered on the squares on the two first two readings (center and first middle edge). Remaining readings look very centered. This is reproducible after each flip. I know you wrote no support, which is fine. I would however love to be able to tweak the script. Any chance you could share it? 🙏
@profBricks another option could be to split the program into two: one to scan and one to solve. That way, one can validate and correct the scans manually before putting them in the solver. Pleaaaaaase? :D