Место для баннера, продается :)

Лабораторный практикум №2 по LEGO MINDSTORMS NXT

Лабораторный практикум №2 по LEGO MINDSTORMS NXT Лабораторный практикум №2 по LEGO MINDSTORMS NXT

Целью данного урока является изучение основ среды программирования LabVIEW и получение практических навыков программирования с использованием инструментария LabVIEW NXT. Приведен пример написания кодов для считывания показаний датчиков на NXT-блоке.

 

РАЗДЕЛЫ

А. Знакомство со средой программирования LabVIEW

В. Написание кода для считывания показаний датчиков на NXT-блоке


ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ

• Lego Mindstorms NXT

• NI LabVIEW с Lego NXT инструментарием

АППАРАТНЫЕ СРЕДСТВА

•  Lego Mindstorms NXT Tribot

• Ноутбук или компьютер с D-Link Bluetooth DBT-120 аппаратным ключом

 

ЧАСТЬ A: ЗНАКОМСТВО СО СРЕДОЙ ПРОГРАММИРОВАНИЯ LABVIEW

1. Откройте и запустите LabVIEW 8.6 путем нажатия на значок Windows Start >> All Programs >> National Instruments LabVIEW 8.6. Перед Вами появится такое стартовое окно LabVIEW 8.6, как показано ниже:

2. Вы можете запустить чистое окно для программирования, выбирая New>> Blank VI, или шаблон (Examples>> Find Examples…) для изменения уже существующего кода под Вашу определенную цель. Для начала создадим новый проект VI. У Вас появятся следующие два окна. Окно фронтальной панели - интерфейс для пользователей для взаимодействия с программой. Здесь разрабатывается основа программы, два главных объекта для фронтальных панелей - элементы управления (ввод)) и индикаторы (вывод). Окно диаграмм - место для записи графических кодов, которые обрабатывают вводные данные пользователя и логику функций.

3. Вы можете менять окна местами путем выбора Windows>>Tile Left and Right с целью их одновременного наличия на экране.

4. Чтобы просмотреть, какие элементы управления или индикаторы можно поместить на фронтальную панель, выберите VIEW>> Controls Palette. Вы также можете настроить вид палитры, щелкая по значку View на палитре элементов управления. Чтобы поместить элемент управления или индикатор на фронтальную панель, необходимо нажать на соответствующую иконку на палитре и переместить ее на панель.

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

5. Чтобы просмотреть, какие функции или структуры можно использовать в графическом коде окна диаграмм, выберите VIEW>> Functions Palette. Или используйте тот же самый прием, что и прежде, вызывая правым щелчком мыши на экран палитру функций.

6. Как только Вы закончите написание кода, нажмите кнопку Run на Панели состояния инструментов. На этой панели есть и другие кнопки, такие как кнопка непрерывного выполнения, кнопка прекращения работы, кнопка паузы и т.д. Не забывайте про справку онлайн путем выбора Help>>Show Context Help или нажатия Ctrl + H для вызова окна справки.

ЧАСТЬ B: НАПИСАНИЕ VI КОДА ДЛЯ СЧИТЫВАНИЯ ПОКАЗАНИЙ NXT ДАТЧИКОВ

Для выполнения этой части задания изучите, как написать код для считывания значений датчиков на NXT-блоке. Есть два способа подключения NXT-блока к PC. Первый - соединение с помощью USB кабеля, второй подключение по Bluetooth. Если хотите использовать подключение по Bluetooth, следуйте указаниям из Лабораторного практикума №1 (Часть A) для проверки успешного соединения.

1. Откройте LabVIEW 8.6 путем выбора Windows Start >> All Programs >> National Instruments LabVIEW 8.6. Затем откройте новое окно (New>> Blank VI).

2. Для удобства кодирования прикрепите палитру функции NXT инструментария внизу окна диаграмм. Щелкните правой кнопкой по любому пустому месту в окне диаграмм, затем щелкните по кнопке внизу палитры. Выберите Addons>>NXT Direct Commands. Прикрепите значок канцелярской кнопки в верхнем левом углу палитры.

3. Выберите NXT Direct Commands>>Connection>>Find NXT и поместите его в блок-схему.

4. Щелкните правой кнопкой мыши по верхнему левому входному углу иконки Find NXT, то есть по входному порту NXT name. Вы можете нажать Ctrl + H для вызова окна справки. Переместите курсор в определенный порт ввода-вывода иконки и увидите подсвечивание соответствующего индикатора в окне справки. Выберите Create >>Constant в контекстном меню и код имени NXT-блока. В этом демонстрационном примере имя NXT-блока - FNXT. После выполнения этих действий окно диаграмм будет иметь следующий вид:

Примечание: Убедитесь в правильности написания имени NXT-блока заглавными буквами.

5. Чтобы использовать соединение по Bluetooth, в программе должен быть параметр, отвечающий за тип подключения. Щелкните правой кнопкой мыши по Типу подключения (USB) входного порта иконки Find NXT VI, то есть по второму входному порту с левой стороны иконки, и выберите Create>>Constant в контекстном меню. Измените тип подключения с USB на Bluetooth.

6. На функциональной палитре выберите NXT Direct Commands>>Connection>>Create NXTObject и поместите его рядом с иконкой VI Find NXT. Соедините выход VISA resource string значка Find NXT с входным портом VISA resource string значка Create NXTObject. Соедините информацию об ошибке двух значков - вывод error out значка Find NXT с вводом error in значка Create NXTObject.

Подсказка: Когда выбираете новый VI, как Create NXTObject в данном случае, передвигайте его поближе к связанному VI значку - и LabVIEW соединит соответствующие порты.

7. Щелкните по значку Owning Palette в функциональной палитре, выберите NXT Direct Commands>>Utilities>>Get Battery Level и поместите рядом с иконкой VI Create NXTObject. Соедините информацию NXT Object и error информацию об ошибке обоих этих VI значков (используйте подсказку шага 6).

8. Чтобы узнать значение уровня батареи, показанное на фронтальной панели, щелкните правой кнопкой мыши по второму выходному порту значка VI Get Battery Level, то есть выходному порту милливольт, выберите Create>>Indicator в контекстном меню.

9. Последний шаг призван удалить созданный ранее объект NXT. Выберите NXT Direct Commands>>Utilities>>Destroy NXTObject и поместите его рядом со значком VI Get Battery Level, соедините информацию NXT Object и error информацию обоих VI значков (используйте подсказку шага 6).

10. Написание кода для считывания уровня батареи NXT-блока закончено. Нажмите Ctrl + E, чтобы переключиться на окно фронтальной панели и нажать кнопку Run на панели инструментов для запуска выполнения программы NXT.

Попытайтесь изменить этот код, чтобы получить больше информации об устройстве NXT, узнать версию прошивки и переименовать NXT-блок при помощи существующих VI в NXT Direct Commands>>Utilities.

11. Есть четыре различных датчика, которые можно подключить к NXT-блоку. Убедитесь, что соединяетесь с настройками по умолчанию. Теперь внесем изменения в написанный код, чтобы считывать показания светочувствительного датчика. Сначала удалите связи между VI иконками Destroy NXTObject и Get Battery Level.

12. Выберите NXT Direct Commands>>Input>>Read Light Sensor и поместите его рядом со значком Get Battery Level. Соедините информацию об NXT Object и error информацию этих VI иконок.

13. Щелкните правой кнопкой мыши по масштабируемому значению выходного порта VI значка Read Light Sensor и выберите Create>>Indicator в контекстном меню. Теперь на фронтальной панели есть два индикатора. Запустите эту программу, чтобы одновременно получить значение уровня батареи и показания светочувствительного датчика.

14. Обычно считывание показаний датчика продолжается до тех пор, пока пользователь не нажмет кнопку STOP. Чтобы реализовать это, нужно добавить в программу структуру цикла. Щелкните правой кнопкой мыши по любому пустому месту блок-схемы. В палитре функций быстрого вызова выберите Express>>Execution Control>>While Loop, перетащите квадрат с иконками Read Light Sensor и Scaled Value.

15. LabVIEW автоматически создаст на фронтально панели кнопку управления под названием STOP. Пользователи могут нажать эту кнопку, чтобы остановить выполнение цикла с условием продолжения и позволить программе завершиться. Нажмите кнопку Run на панели инструментов и посмотрите значения двух индикаторов. Отметьте, что значение уровня батареи перестанет изменяться, в то время как показания светочувствительного датчика меняются со временем, пока не будет нажата кнопка STOP.

16. Сохраните код для будущего использования. 

Попытайтесь изменить код так, чтобы получить считывание показаний других датчиков при помощи существующих VI в NXT Direct Commands>>Input (сенсорный датчик, датчик звука и ультразвуковой датчик). Не забудьте создать соответствующий индикатор для каждого датчика.

  • Оцените материал
    (0 голосов)
  • Опубликовано в NXT 2
  • Прочитано 3347 раз

Оставить комментарий

Убедитесь, что вы вводите (*) необходимую информацию, где нужно
HTML-коды запрещены

Наверх

Последние новости от LEGO Mindstorms NXT 2

Лабораторный практик…

29-04-2013 Hits:3209 NXT 2 Capitano - avatar Capitano

Лабораторный практикум №4 по LEGO MINDSTORMS NXT

Целью данного урока является написание кода для подключения Wiimote по Bluetooth при помощи LabVIEW. Приведен пример написания кода для считывания состояния одной кнопки и статуса XYZ ускорения Wiimote.

Read more

Лабораторный практик…

24-04-2013 Hits:15192 NXT 2 Capitano - avatar Capitano

Лабораторный практикум №3 по LEGO MINDSTORMS NXT

Целью данного урока является написание кода, с помощью которого можно будет считывать состояние мотора робота NXT и заставить моторы двигаться, используя инструментарий LabVIEW NXT.

Read more

Лабораторный практик…

22-04-2013 Hits:3348 NXT 2 Capitano - avatar Capitano

Лабораторный практикум №2 по LEGO MINDSTORMS NXT

Целью данного урока является изучение основ среды программирования LabVIEW и получение практических навыков программирования с использованием инструментария LabVIEW NXT. Приведен пример написания кодов для считывания показаний датчиков на NXT-блоке.

Read more

Коментарии в материале

Мишени для тренировок…

01-12-2016 Hits:3027 Спортивная стрельба Capitano - avatar Capitano

Каталог мишеней для тренировок на основе "Официальной мишени для ПТ" Все файлы в формате PDF, при печати использовать реальный размер!

Read more

17.10.2015г. Чемпионат по Fi…

02-10-2015 Hits:1517 Спортивная стрельба Capitano - avatar Capitano

17.10.2015г. Чемпионат по Field Target. Киев.Украина

Приглашаются все желающие, 17 октября 2015г, принять участие в открытых соревнованиях по Field Target, в классах ППП и ПСП до 16,3дж в калибре 4,5мм. 

Read more