За преподавателя: Управление на хващач чрез сензор за допир Pro Preview

Необходимо е да се абонирате за FLLCasts.com, за да достъпите това видео

Абонирай се

  • #1619
  • 11 Jun 2020

Micro-Python 2.0: Ако моторите не се описват като обекти, програмата ще спре да работи след като ги извика многократно в цикъл. Уверете се, че учениците са описали променлива, в която е записан мотора, още в началото на програмата.

Примерно решение на задачата"Програмирайте робота да възпроизведе звуковия файл "DETECTED" ако сензорът за допир е натиснат.":

# Create your objects here. 
ev3 = EV3Brick()
touch = TouchSensor(Port.S1) 

# Write your program here. 
ev3.speaker.beep()

if touch.pressed():
    ev3.speaker.play_file(SoundFile.DETECTED) 

Примерно решение на задачата"Програмирайте робота да възпроизведе звуковия файл "SNORING" ако условието на логическият оператор "if" не е спазено.":

# Create your objects here.  
ev3 = EV3Brick() 
touch = TouchSensor(Port.S1) 

# Write your program here.  
ev3.speaker.beep()
 
if touch.pressed(): 
    ev3.speaker.play_file(SoundFile.DETECTED) 
else:
    ev3.speaker.play_file(SoundFile.SNORING) 

Примерно решение на задачата"Накарайте програмата ви да се повтаря вечно.":

# Create your objects here. 
ev3 = EV3Brick()
touch = TouchSensor(Port.S1)

# Write your program here. 
ev3.speaker.beep()

while True:
    if touch.pressed():
        ev3.speaker.play_file(SoundFile.DETECTED)
    else:
        ev3.speaker.play_file(SoundFile.SNORING) 

Примерно решение на задачата"Променете програмата си така, че когато сензора за допир е натиснат, робота да затваря щипката си, в противен случай да я отваря. Използвайте командата "run".":

# Create your objects here.  
ev3 = EV3Brick() 
touch = TouchSensor(Port.S1) 
grabber = Motor(Port.A)

# Write your program here.  
ev3.speaker.beep()

while True:  
    if touch.pressed(): 
        grabber.run(100)
    else:
        grabber.run(-100)

Примерно решение на задачата"В нова програма, инструктирайте робота си да изчака докато сензорът за допир бъде натиснат и чак тогава да затвори щипката си. Използвайте командата "run_angle".":

# Create your objects here.  
ev3 = EV3Brick() 
touch = TouchSensor(Port.S1) 
grabber = Motor(Port.A)

# Write your program here.  
ev3.speaker.beep()

while not touch.pressed():
    pass
grabber.run_angle(100, 60)

Примерно решение на задачата"Програмирайте робота си, след като е изчакал сензорът му за допир да бъде натиснат, да изчака да бъде отпуснат, преди да затвори щипката си.":

# Create your objects here. 
ev3 = EV3Brick()
touch = TouchSensor(Port.S1)
grabber = Motor(Port.A)

# Write your program here. 
ev3.speaker.beep()

while not touch.pressed():
    pass
while touch.pressed(): 
    pass
grabber.run_angle(100, 60)

Примерно решение на задачата"Програмирайте робота си, след като е изчакал сензора за допир да бъде отпуснат, да изчака 200 милисекунди и да провери дали сензора за допир е бил натиснат отново. Само ако е натиснат отново, нека затвори щипката си.":

# Create your objects here.  
ev3 = EV3Brick() 
touch = TouchSensor(Port.S1) 
grabber = Motor(Port.A) 

# Write your program here.  
ev3.speaker.beep() 

while not touch.pressed(): 
    pass
while touch.pressed():
    pass 
wait(200)
if touch.pressed():
    grabber.run_angle(100, 60)

Примерно решение на задачата"Програмирайте робота, ако сензора за допир НЕ е бил натиснат отново, след като е изчакал 200 милисекунди, да отвори щипката си. Използвайте оператор "else".":

# Create your objects here.  
ev3 = EV3Brick() 
touch = TouchSensor(Port.S1) 
grabber = Motor(Port.A) 

# Write your program here.  
ev3.speaker.beep() 
while not touch.pressed():  
    pass 
while touch.pressed(): 
    pass 
wait(200) 
if touch.pressed(): 
    grabber.run_angle(100, 60)
else:
    grabber.run_angle(-100, 60)

Примерно решение на задачата"Накарайте цялата ви програма да се повтаря вечно.":

# Create your objects here.  
ev3 = EV3Brick() 
touch = TouchSensor(Port.S1) 
grabber = Motor(Port.A) 

# Write your program here.  
ev3.speaker.beep() 

while True:
    while not touch.pressed():  
        pass 
    while touch.pressed():  
        pass 
    wait(200) 
    if touch.pressed():   
        grabber.run_angle(100, 60) 
    else: 
        grabber.run_angle(-100, 60)

Курсове и занятия включващи този Урок

Този Урок е използван в следните курсове и занятия.

Image for Python за EV3 LEGO Mindstorms - ниво 2
  • 39
  • 19:58
  • 93
Image for Занятие 2 - Tабло за управление на хващач на кран
  • 6
  • 6
  • 7
  • 3d_rotation 2