Робототехника
Робототехника
Роботы вокруг нас
Роботы вокруг нас
Роботы вокруг нас
Роботы вокруг нас
Три основных закона робототехники
Из чего состоит робот?
Система управления роботом
Датчики
Датчики
Исполнительные устройства
Робототехника
Контакты ввода и вывода
Порты ввода и вывода
Управление лампочками
Управление в цикле
Система команд роботов
Управление без обратной связи
Управление без обратной связи
Робототехника
Управляющие кнопки
Управляющие кнопки
Датчик касания (кнопка)
Сонар (датчик расстояния)
Сонар (датчик расстояния)
Погрешность датчика
Программа, использующая сонар
Движение по линии
Релейное управление
Пропорциональное управление
Конец фильма
Источники иллюстраций
11.59M
Категория: ПрограммированиеПрограммирование

Робототехника

1. Робототехника

1
Робототехника
§ 1. Введение
§ 2. Управление роботами
§ 3. Алгоритмы управления роботами
К.Ю. Поляков, Е.А. Ерёмин, 2018
http://kpolyakov.spb.ru

2. Робототехника

2
Робототехника
§ 1. Введение
К.Ю. Поляков, Е.А. Ерёмин, 2018
http://kpolyakov.spb.ru

3. Роботы вокруг нас

Робототехника, 8 класс
3
Роботы вокруг нас
«Робот» (чеш. robota — «подневольный труд»)
Промышленные роботы – станки с числовым
программным управлением (ЧПУ):
Карел Чапек
(1890-1938)
К.Ю. Поляков, Е.А. Ерёмин, 2018
http://kpolyakov.spb.ru

4. Роботы вокруг нас

Робототехника, 8 класс
4
Роботы вокруг нас
Домашние роботы
пылесос
сенокосилка
кормушка для кота
Роботы-андроиды:
Asimo (Honda)
К.Ю. Поляков, Е.А. Ерёмин, 2018
www.bostondynamics.com
http://kpolyakov.spb.ru

5. Роботы вокруг нас

Робототехника, 8 класс
5
Роботы вокруг нас
беспилотные ЛА
беспилотные
автомобили
К.Ю. Поляков, Е.А. Ерёмин, 2018
боевой робот
робот-пожарный
патрульный робот
робот-хирург
http://kpolyakov.spb.ru

6. Роботы вокруг нас

Робототехника, 8 класс
6
Роботы вокруг нас
Автономный робот может:
• перемещаться и работать длительное время
без вмешательства человека
• собирать информацию об окружающей среде
• приспосабливаться к изменению обстановки
Робототехника — это наука о разработке и
использовании автоматизированных
технических систем.
математика
кибернетика
механика
искусственный интеллект
К.Ю. Поляков, Е.А. Ерёмин, 2018
автоматика
http://kpolyakov.spb.ru

7. Три основных закона робототехники

Робототехника, 8 класс
7
Три основных закона робототехники
1. Робот не может причинить вред
человеку или своим бездействием
допустить, чтобы человеку был
причинен вред.
2. Робот должен повиноваться всем
приказам, которые дает человек,
кроме тех случаев, когда эти приказы
Айзек Азимов противоречат Первому закону.
(1920-1992)
3. Робот должен заботиться о своей
безопасности в той мере, в которой
это не противоречит Первому
и Второму законам.
К.Ю. Поляков, Е.А. Ерёмин, 2018
http://kpolyakov.spb.ru

8. Из чего состоит робот?

Робототехника, 8 класс
8
Из чего состоит робот?
система
управления
датчики
датчики
датчики
исполнительные
механизмы (моторы)
К.Ю. Поляков, Е.А. Ерёмин, 2018
http://kpolyakov.spb.ru

9. Система управления роботом

Робототехника, 8 класс
9
Система управления роботом
контроллер
LEGO EV3
контроллер
Arduino
микроконтроллер
• микропроцессор
• оперативная память (ОЗУ)
• постоянная память (ПЗУ)
• каналы ввода-вывода
К.Ю. Поляков, Е.А. Ерёмин, 2018
http://kpolyakov.spb.ru

10. Датчики

Робототехника, 8 класс
10
Датчики
датчик
датчик
освещённости температуры
датчик
газа
датчик
движения
датчик
давления
Датчики из наборов LEGO Mindstorms:
датчик
касания
датчик звука
гироскопический
датчик
К.Ю. Поляков, Е.А. Ерёмин, 2018
датчик расстояния датчик цвета
датчик ускорения
http://kpolyakov.spb.ru

11. Датчики

Робототехника, 8 класс
11
Датчики
Датчик — это устройство, которое измеряет
какую-то физическую величину и выдаёт
информацию о ней в виде электрического
сигнала.
аналоговый
сигнал
АЦП
0110101010
цифровой
сигнал
AЦП = Аналого-Цифровой Преобразователь
К.Ю. Поляков, Е.А. Ерёмин, 2018
http://kpolyakov.spb.ru

12. Исполнительные устройства

Робототехника, 8 класс
12
Исполнительные устройства
двигатель
моторы LEGO
двигатели и приводы для использования с Arduino
К.Ю. Поляков, Е.А. Ерёмин, 2018
http://kpolyakov.spb.ru

13. Робототехника

13
Робототехника
§ 2. Управление роботами
К.Ю. Поляков, Е.А. Ерёмин, 2018
http://kpolyakov.spb.ru

14. Контакты ввода и вывода

Робототехника, 8 класс
14
Контакты ввода и вывода
контакты ввода
и вывода
микроконтроллер
USB
контакты ввода
и вывода (пины)
светодиод
«земля»
К.Ю. Поляков, Е.А. Ерёмин, 2018
резистор
http://kpolyakov.spb.ru

15. Порты ввода и вывода

Робототехника, 8 класс
15
Порты ввода и вывода
Порты — это многоконтактные разъёмы.
порты вывода
моторы
порты ввода
микроконтроллер
датчики
К.Ю. Поляков, Е.А. Ерёмин, 2018
http://kpolyakov.spb.ru

16. Управление лампочками

Робототехника, 8 класс
16
Управление лампочками
номер пина
данные
записать(n, d)
Лампочка подключена к пину 11:
0 – нет сигнала
255 – максимальный
сигнал
?
записать(11, 255)
ждать(1000) | время в мс
записать(11, 0)
К.Ю. Поляков, Е.А. Ерёмин, 2018
Что увидим?
http://kpolyakov.spb.ru

17. Управление в цикле

Робототехника, 8 класс
17
Управление в цикле
?
нц
записать(11, 255)
ждать(1000) | время в мс
записать(11, 0)
кц
?
Что увидим?
ждать(1000)
Как добиться мигания?
К.Ю. Поляков, Е.А. Ерёмин, 2018
http://kpolyakov.spb.ru

18. Система команд роботов

Робототехника, 8 класс
18
Система команд роботов
Команды управления:
• задать мощность каждого мотора
• выбрать направление вращения
• включить мотор
• выключить мотор
• провернуть вал на заданный угол (?)
Команды обратной связи:
• сигналы с датчиков
К.Ю. Поляков, Е.А. Ерёмин, 2018
http://kpolyakov.spb.ru

19. Управление без обратной связи

Робототехника, 8 класс
19
Управление без обратной связи
номер
мотора
мощность в %
мотор[n]:= d
0 – стоп
100 – «полный вперёд»
–100 – «полный назад»
не управляется
мотор[0]
мотор[1]
?
мотор[0]:= 100
ждать(2000)
мотор[0]:= 0
К.Ю. Поляков, Е.А. Ерёмин, 2018
Что увидим?
мотор[0]:= 100
мотор[1]:= -100
http://kpolyakov.spb.ru

20. Управление без обратной связи

Робототехника, 8 класс
20
Управление без обратной связи
мотор[0]:= 100
мотор[1]:= -100
ждать(1000)
мотор[0]:= 0
мотор[1]:= 0
?
К.Ю. Поляков, Е.А. Ерёмин, 2018
мотор[0]:= 100
мотор[1]:= 0
ждать(1000)
мотор[0]:= 0
мотор[1]:= 0
В чём разница?
http://kpolyakov.spb.ru

21. Робототехника

21
Робототехника
§ 3. Алгоритмы управления
роботами
К.Ю. Поляков, Е.А. Ерёмин, 2018
http://kpolyakov.spb.ru

22. Управляющие кнопки

Робототехника, 8 класс
22
Управляющие кнопки
светодиод
пин 11
пин 2
«стягивающий»
резистор
кнопка
резистор
К.Ю. Поляков, Е.А. Ерёмин, 2018
+5V
http://kpolyakov.spb.ru

23. Управляющие кнопки

Робототехника, 8 класс
23
Управляющие кнопки
цел x
бесконечный цикл
нц
x:= прочитать(2)
если x = 255 то
записать(11, 255)
иначе
записать(11, 0)
все
кц
К.Ю. Поляков, Е.А. Ерёмин, 2018
светодиод
пин 11
пин 2
«стягивающий»
резистор
кнопка
резистор
+5V
http://kpolyakov.spb.ru

24. Датчик касания (кнопка)

Робототехника, 8 класс
24
Датчик касания (кнопка)
0 – нет касания
255 – есть касание
пока не
коснулся
мотор[0]:=100
мотор[1]:=100
нц пока датчик[0]<>255
ждать(1)
чтобы не
кц
«зависла»
мотор[0]:=0
мотор[1]:=0
К.Ю. Поляков, Е.А. Ерёмин, 2018
http://kpolyakov.spb.ru

25. Сонар (датчик расстояния)

Робототехника, 8 класс
25
Сонар (датчик расстояния)
0 – расстояние 0
255 – 10 м или более
?
А если 0 < d < 255?
Одна единица: 10 : 255 м = 10 100 : 255 см
d 10 100

d единиц: S
255
50 10 100
196 cм
50 единиц: S
255
?
Как подъехать на 30 см?
К.Ю. Поляков, Е.А. Ерёмин, 2018
http://kpolyakov.spb.ru

26. Сонар (датчик расстояния)

Робототехника, 8 класс
26
Сонар (датчик расстояния)
?
Как подъехать на 30 см?
!
Ровно на 30 см не подъехать!
d 10 100
S
255
d ?
S 255 30 255
d
7,65 8
10 100 10 100

8 10 100
S8
31,37 cм
255
К.Ю. Поляков, Е.А. Ерёмин, 2018
http://kpolyakov.spb.ru

27. Погрешность датчика

Робототехника, 8 класс
27
Погрешность датчика
Возможная ошибка – 1 единица:
7 10 100
27,45 cм
d 7 : S7
255
9 10 100
35,29 cм
d 9 : S7
255
!
ошибка 3 см
ошибка 5 см
При S = 30 см может быть ошибка до 5 см!
Относительная ошибка:
S
5
S
100% 100% 17%
S
30
?
Как изменится при S = 2 м?
К.Ю. Поляков, Е.А. Ерёмин, 2018
http://kpolyakov.spb.ru

28. Программа, использующая сонар

Робототехника, 8 класс
28
Программа, использующая сонар
мотор[0]:= 100
мотор[1]:= 100
нц пока датчик[0] > 8
ждать(1)
кц
мотор[0]:= 0
мотор[1]:= 0
?
Почему плохо датчик[0] <> 8 ?
К.Ю. Поляков, Е.А. Ерёмин, 2018
http://kpolyakov.spb.ru

29. Движение по линии

Робототехника, 8 класс
29
Движение по линии
датчик
освещённости
0 – чёрный
255 – белый
Реальность:
калибровка
10
К.Ю. Поляков, Е.А. Ерёмин, 2018
55
120
185
230
http://kpolyakov.spb.ru

30. Релейное управление

Робототехника, 8 класс
30
Релейное управление
Реле — это устройство, которое по сигналу на входе
переключается между двумя состояниями
(«включено»-«выключено»).
калибровка: 10 – чёрный, 230 – белый
средний уровень серого: (10 + 230) : 2 = 120
нц
если датчик[0]>120 то
мотор[0]:=100
| повернуть вправо
мотор[1]:=0
иначе
мотор[0]:=0
| повернуть влево
мотор[1]:=100
все
кц
К.Ю. Поляков, Е.А. Ерёмин, 2018
мотор[1]
мотор[0]
!
Робот «дёргается»!
http://kpolyakov.spb.ru

31. Пропорциональное управление

Робототехника, 8 класс
31
Пропорциональное управление
Идея: чем меньше отклонение, тем меньше
управляющий сигнал.
коэффициент усиления
вещ u, k=0.5
нц
управление
u:=k*(120-датчик[0])
мотор[0]:=50-u
мотор[1]:=50+u
кц
датчик[0]
u
220
120
20
-50
100
0
0
50
50
0
50
100
К.Ю. Поляков, Е.А. Ерёмин, 2018
мотор[0] мотор[1]
http://kpolyakov.spb.ru

32. Конец фильма

Робототехника, 8 класс
32
Конец фильма
ПОЛЯКОВ Константин Юрьевич
д.т.н., учитель информатики
ГБОУ СОШ № 163, г. Санкт-Петербург
[email protected]
ЕРЕМИН Евгений Александрович
к.ф.-м.н., доцент кафедры мультимедийной
дидактики и ИТО ПГГПУ, г. Пермь
[email protected]
К.Ю. Поляков, Е.А. Ерёмин, 2018
http://kpolyakov.spb.ru

33. Источники иллюстраций

Робототехника, 8 класс
33
Источники иллюстраций
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
ru.wikipedia.org
www.brighthubengineering.com
www.woodcraft.com
gearpatrol.com
www.robotshop.com
www.robotonline.net
www.bostondynamics.com
www.digitaltrends.com
www.coolthings.com
www.npr.org
robotig.com
bricker.ru
www.hobbytronics.co.uk
иллюстрации художников издательства «Бином»
авторские материалы
К.Ю. Поляков, Е.А. Ерёмин, 2018
http://kpolyakov.spb.ru
English     Русский Правила