- •«Томский государственный университет систем управления и радиоэлектроники» (тусур)
- •Комплекс лабораторных работ на базе модели руки inmoove
- •Содержание
- •1 Введение
- •4 Описание манипулятора верхней конечности InMoove
- •4.1 Модель предплечья
- •4.2 Модель запястья
- •5.2.1 Пластик акрилонитрилбутадиенстирол (абс)
- •5.2.2 Пластик полилактид (пла)
- •6.2 Выбор конструкции 3d – принтера
- •8 Сервоприводы для реализации движения пальцев рук
- •8.1 Сервопривод RobotBase
- •8.2 Сервопривод TowerPro sg-5010
- •9.2 Биометрическая антропоморфная рука
- •8.1.4 Теоретическая часть
- •8.1.4.1 Общие сведения
- •8.1.4.2 Принципиальная схема Arduino Uno
- •8.1.4.6 Связь
- •8.1.4.7 Программирование
- •8.1.4.8 Автоматическая (программная) перезагрузка
- •8.1.4.9 Токовая защита разъема usb
- •8.1.4.10 Физические характеристики
- •8.1.5 Среда разработки Arduino
- •8.1.5.1 Кнопки панели инструментов
- •8.1.5.2 Блокнот (Sketchbook)
- •8.1.5.3 Закладки, Файлы и Компиляция
- •8.1.5.4 Загрузка скетча в Arduino
- •8.1.5.5 Библиотеки
- •8.1.5.6 Мониторинг последовательной шины (Serial Monitor)
- •8.1.5.7 Настройки
- •8.1.6 Основы программирования Arduino
- •8.1.6.1 Синтаксис
- •8.1.6.2 Типы данных
- •8.1.6.3 Операторы
- •8.1.6.4 Функции
- •8.1.7.4 Загрузка примера “Blink” (мигание) на плату
- •8.1.7.5 Пояснения к коду примера “Blink”
- •8.2 Лабораторная работа № 2 Знакомство с Arduino leonardo
- •8.2.4 Теоретическая часть
- •8.2.4.1 Характеристики платы
- •8.2.4.2 Память
- •8.2.4.3 Входы и Выходы
- •8.2.4.4 Связь
- •8.2.4.5 Программирование
- •8.2.4.6 Автоматическая (программная) перезагрузка
- •8.2.4.7 Токовая защита разъема usb
- •8.2.4.8 Физические характеристики
- •8.2.5 Методические указания по выполнению работы
- •8.3 Лабораторная работа №3 Подключение сервомоторов к плате Arduino Uno. Реализация движения посредствам сервомоторов.
- •8.3.4.1 Сервоприводы, используемые для реализации движения пальцев рук
- •8.3.4.2 Подключение сервомоторов
- •7.3.4 Методические указания по выполнению лабораторной работы
- •7.3.4.1 Подсоедините сервомоторы к плате Arduino.
- •6 Заключение
- •Список используемых источников
- •Приложение а (Обязательное) Описание составных частей манипулятора верхней конечности InMoove распечатанных на 3d принтере
- •Приложение б
- •4.2 Характеристики
- •4.3 Принципиальная схема Arduino Uno
- •4.4 Питание
- •4.5 Память
- •4.6 Входы и Выходы
- •4.7 Связь
- •4.8 Программирование
- •4.9 Автоматическая (программная) перезагрузка
- •4.10 Токовая защита разъема usb
- •4.11 Физические характеристики
- •5 Среда разработки Arduino
- •5.1 Кнопки панели инструментов
- •5.2 Блокнот (Sketchbook)
- •5.3 Закладки, Файлы и Компиляция
- •5.4 Загрузка скетча в Arduino
- •5.5 Библиотеки
- •5.6 Мониторинг последовательной шины (Serial Monitor)
- •5.7 Настройки
- •6 Основы программирования Arduino
- •6.1 Синтаксис
- •6.2 Типы данных
- •6.3 Операторы
- •6.4 Функции
- •7.4 Загрузка примера “Blink” (мигание) на плату
- •7.5 Пояснения к коду примера “Blink”
- •7.6 Изменение частоты мигания светодиода
- •Лабораторная работа № 2
- •4.2 Память
- •4.3 Входы и Выходы
- •4.4 Связь
- •4.5 Программирование
- •4.6 Автоматическая (программная) перезагрузка
- •4.7 Токовая защита разъема usb
- •4.8 Физические характеристики
- •5 Методические указания по выполнению работы
- •Лабораторная работа №3 Подключение сервомоторов к плате Arduino Uno
- •Теоретическая часть
- •4.1 Сервоприводы, используемые для реализации движения пальцев рук
- •4.2 Подключение сервомоторов
- •Методические указания по выполнению лабораторной работы
5.6 Мониторинг последовательной шины (Serial Monitor)
Отображает данные посылаемые в платформу Arduino (плата USB или плата последовательной шины). Для отправки данных необходимо ввести текст и нажать кнопку Send или Enter. Затем выбирается скорость передачи из выпадающего списка, соответствующая значению Serial.beginв скетче. На ОС Mac или Linux платформа Arduino будет перезагружена (скетч начнется сначала) при подключении мониторинга последовательной шины.
Имеется возможность обмена информацией с платформой через программы Processing, Flash, MaxMSP и т.д. (см. подробности на странице описаний интерфейсов).
5.7 Настройки
Некоторые настройки изменяются в окне Preferences(меню Arduino в ОС Mac или File в ОС Windows и Linux). Остальные настройки находятся в файле, месторасположение которого указано в окне Preferences.
6 Основы программирования Arduino
6.1 Синтаксис
1 . Каждое выражение заканчивается символом ; точка с запятой. Например: a = b+c; 2. Тело функций и составных операторов (if, else, for, while) обособляется фигурными скобками (аналогично BeginEnd в языке Pascal). Например: if( a>0 ) { b = a+1; } 3. Строки обособляются обычными двойными кавычками “. Пример: println(“some text”); 4. Символы обособляются одинарными кавычками: symbol = ‘a’; 5. Подключение библиотек осуществляется с помощью конструкции: #include <math.h> 6. Комметарии в программе начинаются с символов // два прямых слеша. Пример: //это моя программа
6.2 Типы данных
Объявление переменной в языке c++ осуществляется с помощью конструкции вида: тип_переменной имя_переменной; Пример: int x, y; //объявлены две переменные x и y, имеющие целый тип 1 . Целые числа byte от 0 до 255 int от 32 768 до 32 767 word от 0 до 65535 long от 2 1 47 483 648 до 2 1 47 483 647 2. Дробные числа float от 3.4028235E+38 до 3.4028235E+38 double эквивалетно float в текущей версии Arduino 3. Массивы Массивы в c++ задаются конструкцией типа: тип_элемента имя_массива[размер]; Пример: int numbers[10]; //задает массив из десяти целых чисел 4. Строки и символы char символ; Строки в c++ представляют собой массивы с элементами типа char. Пример: char my_str[10]; //строка из десяти символов 5. Прочие типы void пустой тип; boolean false либл true (ложь или истина).
6.3 Операторы
1 . Операторы сравнения == равенство != неравество < меньше <= меньше, либо равно > больше >= больше, либо равно 2. Условия if(a>0) { ... команды, выполняемые в случае истинности условия }e lse { ... команды, выполняемые в противном случае } 3. Циклы for (k=0; k<3; k=k+1) { ... команды, выполняемые на каждом шаге цикла } В скобках последовательно указывается: начальное значение итератора k=0; условие продолжения цикла k<3 (пока итератор меньше трех); действие над итератором во время каждого шага k=k+1 (увеличиваем на единицу на каждом шаге).
6.4 Функции
тип_функции имя_функции( аргументы ) { команды, выполняемые в рамках функции return результат_функции; } тип_функции тип возвращаемого значения. Например, стандартная функция sin имеет тип возвращаемого значения float. имя_функции
7 Мигание встроенным на плату Arduino светодиодом
7.1 Необходимые элементы
Для данного примера понадобится плата Arduino и кабель USB.
На Arduino Uno присутствуют ряды портов типа мама по бокам платы, которые используются для подключения периферийных электронных устройств или “шилдов”.
Кроме того, на плате присутствует встроенный светодиод(англ. – LED), которым можно управлять с помощью скетчей. На рисунке 7.1 изображена плата с расположенным на ней светодиодом.
Рисунок 7.1 – изображение платы с расположенным на ней светодиодом
7.2 Загрузка примера “Blink” (мигание) в Arduino IDE
При подключении новой платы к персональному компьютеру, следует обратить внимание на то, что светодиод начинает мигать, так как все платы от производителей поступают с уже загруженным скетчем “Blink”.
Задачей данной лабораторной работы является перепрограммирование платы, изменив частоту мигания светодиода.
7.3 Проверка порта, подключение и программирование платы
В оболочке Arduino IDE существует большое количество примеров, которые уже готовы к использованию. Среди них находится и пример, который заставляет мигать “L” светодиод.
Для начала работы откройте пример “Blink”, который находится в пункте меню File – Examples – 01.Basics. Пример программного кода изображенного в окне среды программирования ArduinoIDEизображен на рисунке 7.3
Рисунок 7.3 - Пример программного кода изображенного в окне среды программирования ArduinoIDE
Примеры, включенные в Arduino IDE, предусматривают режим “только чтение” (“read only”).
Из меню “File” следует выбрать опцию “Сохранить как” (“Save As..”) и сохранить пример под названием “MyBlink”.
Открыть сохраненный файл можно, перейдя по вкладке File – Scetchbook.