Эта страница только для чтения. Вы можете посмотреть исходный текст, но не можете его изменить. Сообщите администратору, если считаете, что это неправильно. ====== Шасси 2WD SmartElements ====== ===== Описание ===== Универсальное трехколесное шасси с двумя ведущими колесами предназначено для конструирования и сборки роботов и других устройств, для которых требуется мобильность. Шасси является основой для набора «МиниБот», но также может использоваться и для других самостоятельных проектов. Основные рабочие поверхности шасси выполнены из 3 мм прозрачного акрила. На платформах уже предусмотрены некоторые отверстия для размещения модулей и датчиков, в том числе контроллера (Uno или Leonardo). Акрил легко поддается обработке, а это значит, что вы можете самостоятельно доработать платформы под собственные требования, начиная от сверления дополнительных отверстий и заканчивая изменением формы самого шасси. В комплект шасси входят: * монтажная площадка нижняя: 1 шт * монтажная площадка верхняя: 1 шт * мотор с редуктором (1:150): 2 шт * крепление для мотора: 2 шт * колесо с резиновой шиной: 2 шт * колесо опорное: 1 шт * стойка М3х40: 4 шт * винт М3х8: 10 шт Шасси поставляется в коробке в разобранном виде. Инструкция по сборке входит в комплект. ==== Технические характеристики ==== * рабочее напряжение моторов: 3-9 В * максимальный потребляемый ток одного мотора: 40 мА * габаритные размеры в собранном виде Д х Ш х В: 120 х 120 х 60 мм ==== Плюсы использования ==== * В данном шасси, в отличии от аналогов используются более мощные и качественные моторы * Инструкция по сборке на русском языке * Полностью готовый комплект для сборки шасси ===== Инструкция по сборке ===== **1.** Прилагая небольшое усилие, наденьте колеса на валы моторов. {{ :главная:моторы_драйверы_шасси:шасси_1.png?nolink |}} **2.** Снимите защитную пленку с монтажных площадок. Закрепите моторы с установленными на их валах колесами на нижней монтажной площадке с помощью предназначенных для этой цели крепежных деталей. {{ :главная:моторы_драйверы_шасси:шасси_2.png?nolink |}} **3.** Установите опорное колесо на нижней монтажной площадке, используя встроенные в него винты (проследите за тем, чтобы не потерять подшипник, которым снабжено колесо). {{ :главная:моторы_драйверы_шасси:шасси_3.png?nolink |}} **4.** Используя четыре металлических стойки М3х40 и восемь винтов М3х8, соедините верхнюю и нижнюю монтажные площадки друг с другом. ===== Пример подключения и использования ===== **Пример:** Для демонстрации работы шасси используется простейший робот, который движется по четырём направлениям (вперед, назад, вправо и влево). Робот собирается очень просто - берётся трёхколёсное шасси с двумя моторами, на платформу шасси крепится контроллер Smart Uno, на контроллер прикрепляется Power Shield, в свою очередь на Power shield прикрепляется Motor shield. Для этого нам понадобится: ^ Что нужно: ^ Кол-во, шт ^ | [[http://smartelements.ru/collection/kontrollery/product/kontroller-smart-uno|Контроллер SmartUno]]| 1 | | [[http://smartelements.ru/product/shassi-2wd-smartelements|Шасси 2WD SmartElements]]| 1 | | [[http://smartelements.ru/product/motor-shield|Motor Shield]] | 1 | | [[http://smartelements.ru/product/power-shield|Power Shield]] | 1 | **Подключение:** - Закрепите на верхней площадке шасси контроллер Smart Uno с помощью винтов и гаек M2, как указано в инструкции к шасси. - На контроллере закрепите плату Power Shield, путём совмещения контактов платы расширения с контактами конроллера. - Сверху, на Power Shield закрепите плату Motor shield, путём совмещения контактов Motor shield с контактами платы Power Shield. - Подключите моторы к плате расширения Motor shield, к клеммным колодкам М1 и М2 (на схеме сверху выделены оранжевым прямоугольником с номером 3). Правый мотор подключите к клеммной колодке M1, красный провод к контакту "+", чёрный к контакту "-". Аналогично подключите левый мотор к клеммной колодке М2. **Скетч для загрузки:** <file Arduino> #define E1 6 //Вывод платы расширения Motor Drive Shield, используемый для контроля скорости мотора А. #define E2 5 //Вывод платы расширения Motor Drive Shield, используемый для контроля скорости мотора В. #define M1 7 //Вывод платы расширения Motor Drive Shield, используемый для контроля направления вращения мотора А. #define M2 4 //Вывод платы расширения Motor Drive Shield, используемый для контроля направления вращения мотора В. int motorSpeed = 255; //Переменная для хранения скорости вращения моторов (вы можете задать свою скорость вращения колес). int delay_time = 1500; void motor_drive_config() //Инициализация выводов платы расширения Motor Drive Shield. { pinMode(M1, OUTPUT); //Назначение вывода M1 выходом. pinMode(M2, OUTPUT); //Назначение вывода M2 выходом. pinMode(E1, OUTPUT); //Назначение вывода E1 выходом. pinMode(E2, OUTPUT); //Назначение вывода E2 выходом. } void move_forward() //Движение робота вперед. { digitalWrite(M1, HIGH); //Левые колеса вращаются вперед. digitalWrite(M2, HIGH); //Правые колеса вращаются вперед. analogWrite(E1, motorSpeed); //Скорость вращения правых колес. analogWrite(E2, motorSpeed); //Скорость вращения левых колес. } void move_right() //Движение робота вправо. { digitalWrite(M1, LOW); //Левые колеса вращаются назад. digitalWrite(M2, HIGH); //Правые колеса вращаются вперед. analogWrite(E1, motorSpeed); //Скорость вращения левых колес. analogWrite(E2, motorSpeed); //Скорость вращения правых колес. } void move_left() //Движение робота влево. { digitalWrite(M1, HIGH); //Левые колеса вращаются вперед. digitalWrite(M2, LOW); //Правые колеса вращаются назад. analogWrite(E1, motorSpeed); //Скорость вращения левых колес. analogWrite(E2, motorSpeed); //Скорость вращения правых колес. } void move_stop() //Остановка робота. { digitalWrite(M1, LOW); //Левые колеса вращаются назад. digitalWrite(M2, LOW); //Правые колеса вращаются назад. analogWrite(E1, 0); //Скорость вращения колес снизить до 0. analogWrite(E2, 0); //Скорость вращения колес снизить до 0. } void move_back() //Движение робота назад. { digitalWrite(M1, LOW); //Левые колеса вращаются назад. digitalWrite(M2, LOW); //Правые колеса вращаются назад. analogWrite(E1, motorSpeed); //Скорость вращения левых колес. analogWrite(E2, motorSpeed); //Скорость вращения правых колес. } void setup() // Задание начальных параметров системы. { motor_drive_config(); //инициализация выводов платы расширения Motor Drive Shield. move_stop(); //начальная позиция робота — робот стоит. } void loop() //Основной цикл { move_forward(); //движение вперёд delay(delay_time); //задержка move_right(); //движение вправо delay(delay_time); //задержка move_left(); //движение влево delay(delay_time); //задержка move_back(); //движение назад delay(delay_time); //задержка move_stop(); //остановка delay(delay_time); //задержка } </file>