Age 7+ in the era of data: learning the tools for data analysis with EV3dev in 2024 & beyond #1633
Growflavor
started this conversation in
Ideas
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
Work in Progress -- currently just an outline of links I would have liked to have known...
Please add your favorite EV3dev learning related links!
LEGO EV3 Sets (included links to US ebay sold listings to show current price points)
EV3dev supports more hardware than just the armel EV3; however, I suggest starting with:
1 x LEGO EV3 Core Set 45544 (sold listings)
Then over time add other kits (annual gifts, 'the LEGO babysitter' ;-), etc.) to be able to easily do many of the diverse EV3 projects found online:
1 x LEGO EV3 Expansion Set 45560 (sold listings)
1 x home set EV3 31313 (sold listings)
multiple drive bases since it is much easier to switch the intelligent brick between them then it is to change variant
LEGO City Cargo Train 60198 can also be programmed with Pybricks
LEGO Spike Prime might become interesting for ML: https://www.rebeccalshen.com/projects/summer21
This post focuses on Python, however EV3dev is a Debian Linux OS so many programming languages may be used...
https://www.ev3dev.org/docs/programming-languages/
https://www.ev3dev.org/docs/tutorials/
Age 7+
One could start with the core set & expansion set projects with LEGO EV3classsroom Blocky.
--The 'drive base' a.k.a. 'robot educator' with the gyro (PDF) & color sensor (PDF) or ultrasonic sensor (PDF) additions is one great versatile bot with which to do many explorations & experiments.
--various forms of 'Bumper Bots': one example type (youtube), another is provided in the Udemy course EV3 Python
--GyroBoy is more complicated, but a fantastic project.
As interest in code 'behind the blocks' emerges, one can
explore the provided pybricks-micropython code for the LEGO coreset & expansion set projects &
port blocks to GEARS for Python3 Blocky accessible to young persons:
GEARSbot online
OpenRobertaLab also offers a Blocky interface for EV3dev as well as many other robotics platforms
BlockPy online (think.cs.vt.edu/blockpy)
--not EV3dev specific, however python blocks & code convert both ways
--programming 'turtle' can be fun for younger persons
RobotLab has useful EV3dev API explanations with helpful code examples
Pybricks ecosystem -- utilize multiple LEGO hub types:
--online for LEGO® BOOST, City, Technic, and SPIKE® & via VScode for EV3 MINDSTORMS®.
--Blocky programming now offered online
Age 10+
A nice interactive online (Colab) python3 practice/reminder/cheat sheet:
https://cs231n.github.io/python-numpy-tutorial/ in Google CoLab Notebooks (online Jupyter notebook)
100 numpy exercises: https://github.com/rougier/numpy-100
VScode venv & pylance setup
Reusing SSH Connections
Control EV3 via RPyC in a VScode Jupyter notebook:
VScode has a jupyter note book extension so you can have a notebook open directly in VScode served from the same .venv you use for the pylance interpreter & use RPyC 5.3.1 to directly control your EV3 by notebook code cells
Especially interesting EV3dev related projects (w.i.p.):
--3Dprint LEGO compatible custom bricks: LDraw2STL
--PID line follower MicroPython single color sensor
--PID line follower Python3 color & ultrasonic sensors
--socket server used in Pathfind3r
--µanthánō Blocky ML prototype
--OpenRobertaLab's new neural network xNN
Direct link to Artificial Neural Networks for EV3:
https://lab.open-roberta.org/?loadSystem=ev3dev&extensions=nn
Interesting EV3 projects (not ported to EV3dev):
-- https://jkbrickworks.com/?s=ev3
--"2 Sensor PID Line Follower - The Most Efficient EV3 Line Follower"
--Mindcub3r 3x3 cube solver
solves traditional Rubik's cube in ~20 steps onboard the EV3 = about 45 seconds
note: color sensor does not properly read colors of common 'speed cubes'
great for a person learning 3x3 cubes --at first they will 'lose' to the mindcub3r then eventually easily beat it
Mindcub3r also can make 'super flip' and other cube combinations for you to solve...swap in the speed cube in the same orientation as the Rubik's cube before mindcub3r starts the moves...
Age 12+
--Port EV3 Core Set projects from micropython to EV3devLangPython: GyroBoy example
--Fork EV3 github project repositories
--Run tests & Build time critical loops with EV3devFast
Spatial Math tutorials: https://github.com/jhavl/spatialmathematics
Practice with new features added to Python versions:
3.7--Debian Buster image
3.8
3.9--Debian Bullseye image
3.10
3.11--Debian Bookworm & Alt Install on Debian Buster image
Age 15+
--customize EV3 images in docker containers
--use Brickstrap to convert containers to SDcard images
--use docker to cross compile
Some uses of python:
QGIS
PlanetarySystemStacker
Octoprint
UDEMY Course: https://www.udemy.com/course/python-for-machine-learning-data-science-masterclass
Beta Was this translation helpful? Give feedback.
All reactions