Merhabalar, okullarda Robotik ve Kodlama eğitimi için çeşitli eğitim robotları kullanılmaktadır. LEGO firmasının ürettiği Mindstorm EV3 bu robot setlerinden birisidir.
EV3, micro-python aracılığı ile Python dili kullanılarak kodlanabilmektedir. Bunun için VS Code editörü üzerinden ilgili eklenti indirilerek söz konusu işlem yapılmaktadır.(https://le-www-live-s.legocdn.com/sc/media/files/ev3-micropython/ev3micropythonv100-71d3f28c59a1e766e92a59ff8500818e.pdf Bkz. Sayfa 4)
Bu konuda Türkçe döküman hazırlıyorum. Robot ile Temel seviyede Python eğitimi ile alakalı çalışma yapıyorum.
Sorunumu şu;
#!/usr/bin/env pybricks-micropython
from pybricks import ev3brick as brick
from pybricks.ev3devices import (Motor, TouchSensor, ColorSensor,
InfraredSensor, UltrasonicSensor, GyroSensor)
from pybricks.parameters import (Port, Stop, Direction, Button, Color,
SoundFile, ImageFile, Align)
from pybricks.tools import print, wait, StopWatch
from pybricks.robotics import DriveBase
# Write your program here
renk_listesi = [Color.BLUE, Color.GREEN, Color.YELLOW, Color.RED, Color.WHITE, Color.BROWN, Color.ORANGE, Color.BLACK]
for renk in renk_listesi:
brick.light(renk)
wait(1000)
Normalde brick.light(Color.GREEN)
kodu ile robotun ışıkları yeşil yanıyor. Benim yapmak istediğim 1 sn aralıkla sırasıyla listedeki renklerde ışık verilmesi. Bunun için yukarıdaki listeyi tanımladım. Altında döngü oluşturdum fakat hata alıyorum.
print(Color.RENK)
şeklinde çıktı aldığımda integer değerler alıyorum. Aldığım integer değeri brick.light(integer_deger)
şeklinde kullandığımda robot o renk ışığını sorunsuz bir şekilde yakıyor. print(renk_listesi[2])
şeklinde deneme yaptığımda yine o rengin integer değerini alıyorum.
for döngüsünü aşağıdaki şekilde çalıştırdığımda
for renk in renk_listesi:
print(renk)
wait(1000)
liste içindeki elemanların integer karşılıkları ekrana basılıyor. Fakat aşağıdaki gibi yaptığımda hata alıyorum
for renk in renk_listesi:
brick.light(renk)
wait(1000)
brick.light(renk)
kod satırı ile ilgili aşağıdaki hata mesajını veriyor
Traceback (most recent call last):
File "/home/robot/motor_test/main.py", line 16, in <module>
ValueError: Invalid argument
Kaç saat kafa patlattım niye olmadı anlamadım. Önerilerinizi bekliyorum.