"Вы читаете о роботах и программировании и думаете: «Было бы здорово сделать что-то подобное самому!» Теми, кем эта идея овладевает чуть больше просто мыслей смотрят кто и как делал своего робота. Читают статьи, смотрят видео. На картинках все понятно. В видеороликах тоже обычно показываются уже готовые продукты, а также сжато показываются технологии их изготовления. И вроде бы то же всё понятно: отпилил, прикрутил, припаял, соединил, запрограммировал вон на той программе вот этим кодом."

пятница, 27 ноября 2020 г.

КРУЖОК РОБОТОТЕХНИКИ 30.11.20

 Посвящается тем кто уже умеет писать программы

На предыдущем занятии мы запустили нашего робота в бесконечном цикле. Он не реагировал на команды управления, так как у нас на электрической схеме и на виртуальной тоже не подключен датчик для принятия решения запускать или останавливать робота.   Значит первое что нужно сделать это подключить датчик, в нашем случае ультразвуковой датчик дистанции. 

При подключении данного датчика алгоритм выполнения работы следующий:

Начало 

1.Замерить дистанцию 

2.Если дистанция меньше заданной то выполнять Алгоритм(прошлый алгоритм)

     Начало

        тело алгоритма с прошлого занятия

     Конец

Конец

В случае такого алгоритма, наш робот будет срабатывать  на объект который к нему приблизился на дистанцию менее заданной. И да, данная программа рассчитана на начинающих, но она хорошо демонстрирует подход структурного программирования, характерного для написания вычислительных программ. В принципе не важно писали вы программу с помощью конструктора (графических блоков) или писали сразу на языке программирования, в любом случае эта программа демонстрирует структурный метод программирования. А для создания программ управления, обязательно нужно знать устройство микроконтроллера, и низкоуровневое программирование. Именно тогда Ваши программы управления станут быстрыми и эффективными. Пример - необходимо помигать светодиодом 13 на плате микроконтроллера.

КРУЖОК ОТ 27.11.20

Здраствуйте. сегодня мы с Вами обсудим как заставить МК управлять актюатором.   Для этого надо вспомнить что такое программа управления(компьюторная программа). И да, программа управления это инструкция(алгоритм) согласно, которой наш объект управления сможет выполнить предписанные ему действия. Для этого мы должны создать список(систему) команд кoторые понимает наш исполнитель, а он может включить или выключить светодиод, еще ему известна команда ждать назначенный промежуток времени. Значит примерный алгоритм будет следующим:

НАЧАЛО

  1. включить первый светодиод
  2. ждать 10мс(микросекунд)
  3. выключить первый светодиод
  4. включить второй светодиод
  5. ждать 10мс(микросекунд)
  6. выключить второй светодиод
  7. включить третий светодиод
  8. ждать 10мс(микросекунд)
  9. выключить третий светодиод
  10. включить четвертый светодиод
  11. ждать 10мс(микросекунд)
  12. выключить четвертый светодиод 
  13. включить пятый светодиод
  14. ждать 10мс(микросекунд)
  15. выключить пятый светодиод
  16. включить шестой светодиод
  17. ждать 10мс(микросекунд)
  18. выключить шестой светодиод
  19. включить седьмой светодиод
  20. ждать 10мс(микросекунд)
  21. выключить седьмой светодиод
  22. включить восьмой светодиод
  23. ждать 10мс(микросекунд)
  24. выключить восьмой светодиод 

КОНЕЦ

Теперь перейдем в виртуальную лабороторию и откроем созданный нами проект. Переключимся в режим написания кода и спомощью замечаний запишем наш алгоритм. Вот так.


Теперь давайте рассмотрим нашу виртуальную электрическую схему. Обратили внимание что каждый вход актюатора подключен к определенной точке ввода вывода? Молоодцы у каждой такой точки есть свое имя(адрес) на которуе нам нужно, поочерендно, подать напяжение, подождать, а затем снять.

 

  Для этого рассмотрим другие блоки кода. перейдем на вкладку "выход"

 

Выбираем блок "назначить выход 0 на ВЫСОКИЙ" и размещаем его после комментария "включить первый светодиод" теперь его надо настроить - смотрим на нашу виртуальную сеть и номер точки выхода МК подключенную к первому входу актюатора выбираем в выпадающем списке. Затем точно также вставляем блок после коментария "выключить первый светодиод" настриваем тот выход, а вот уровень меняем на низкий, что означает выключить

 

 Так выполняем для всех светодиодов. Затем переходим на вкладку управление. Выбираем блок "ожидать" настраиваем его на 10 и мс. После чего перетаскиваем на место после коментариев "ждать 10 мс"


Теперь запустим моделирование. Огонек бежит беспрерывно. А почему? На этот вопрос ответим на следующем занятии