An Interest In:
Web News this Week
- April 2, 2024
- April 1, 2024
- March 31, 2024
- March 30, 2024
- March 29, 2024
- March 28, 2024
- March 27, 2024
PyBricks ile ileri geri ve saa sola dnme
Lego'nun Technic Large Hub' iin varsaylan firmware yerine PyBricks firmware' kullanarak Lego cihaznzda MicroPython kullanabiliyoruz.
Bu yazmzda Lego'nun uzaktan kumandas ile, _2 motor_lu bir dzenein altrlmas anlatlmtr.
PyBricks firmware ykleme
Bunun iin ncelikle Firmware' sisteme yklemek gerekiyor ki, bunun iin Lego Technic Hub zerindeki bluetooth tuuna basl tutarken cihaza USB kablosunu takarak, klarn birka kere yanp snmesini bekledikten sonra sisteme giri yaplmas salanr.
Bu admdan sonra aadaki adreste bulunan gncel Firmware seilerek kurulum gerekletirilir.
Bu ksmda baz detaylar bulunabiliyor fakat bunlarla ilgili internette bir ok makaleye rastlanabilmekte.
PyBricks kullanm
PyBricks firmware kurulduysa ve yeniden balattktan sonra artk cihaznz bluetooth ile kullanabilirsiniz. Bunun iin yine yukardaki adresten Bluetooth iaretine basarak firmware kurulumda verdiiniz ismi seerek cihazna balanabilirsiniz.
Cihaznza balant kurabildiyseniz (eletiyseniz) bluetooth ikonu aadaki gibi olacaktr.
Bu admdan sonra kodunuzu yazdktan sonra altr ve durdur butonlar ile kodunuzu gndermeye balayacaksnz.
Uzaktan kullanml iki motorlu rnek
Temel belgelendirmesi olduka gzel olan PyBricks iin, Technic Large Hub zerindeki A ve C portlarna 2 adet motor baldr.
Aadaki kodda ncelikle gerekli ktphaneler eklenmi ve sonrasnda Hub zerindeki hem 5x5'lik matris klandrmas hem de g tuunun n kapatmaktayz.
Sonrasnda A ve C giriine bal 2 motor tanmlanmaktadr. Eer motorlar takl deilse kodunuz hata verecek ve almayacaktr. Sonrasndaki ksmda Lego'nun uzaktan kumandas eklenmi oldu.
lemler diye yorumlanm ksm ise tamamen uzaktan kumandadaki tularn durumlarna gre yazlmtr. Tm sre bir while dngs ierisinde hazrlanmtr ve dng srasnda ilk ncelikle eer herhangi bir tua basl deilse motorlar durduracak ekilde bir kod blou bulunmaktadr.
Sonrasnda ise tek tek ve birden fazla tularn baslmas durumlarn ifade eden ekilde ileri-geri, sa-sol anlamlarn kazanacak 2 motor iin durum yer almaktadr. 360 deerleri, saniyede 360 derecelik ay tarayacak ve ters ynde 360 derece olacak ekilde hazrlanmtr.
from pybricks.pupdevices import Motorfrom pybricks.parameters import Portfrom pybricks.tools import waitfrom pybricks.pupdevices import Remotefrom pybricks.parameters import Button, Colorfrom pybricks.hubs import PrimeHubfrom pybricks.tools import waitfrom pybricks.parameters import Icon# Hub zerindeki klar kapatmahub = PrimeHub()hub.display.off()hub.light.off()# A giriindeki motoru tanmlama (motor01)motor01 = Motor(Port.A)# C giriindeki motoru tanmlama (motor02)motor02 = Motor(Port.C)# Kumanday tanmlamaremote = Remote()# ilemlerwhile True: pressed = () # tklanlmadnda while not pressed: pressed = remote.buttons.pressed() motor01.reset_angle(0) motor02.reset_angle(0) # Sadaki tular motor01'e atama if Button.RIGHT_PLUS in pressed: motor01.run(360) elif Button.RIGHT_MINUS in pressed: motor01.run(-360) # Soldaki tular motor02'ye atama elif Button.LEFT_PLUS in pressed: motor02.run(360) elif Button.LEFT_MINUS in pressed: motor02.run(-360) elif Button.RIGHT_PLUS and Button.LEFT_PLUS in pressed: motor02.run(360) motor01.run(360) elif Button.RIGHT_PLUS and Button.LEFT_MINUS in pressed: motor02.run(-360) motor01.run(360) elif Button.RIGHT_MINUS and Button.LEFT_PLUS in pressed: motor02.run(360) motor01.run(-360) elif Button.RIGHT_MINUS and Button.LEFT_MINUS in pressed: motor02.run(-360) motor01.run(-360) while pressed: pressed = remote.buttons.pressed()
Original Link: https://dev.to/aliorhun/pybricks-ile-ileri-geri-ve-saga-sola-donme-45h3
Dev To
An online community for sharing and discovering great ideas, having debates, and making friendsMore About this Source Visit Dev To