Ходячий робот на TI LaunchPad MSP430 з двома сервоприводами
Минулого місяця я купив два маленьких сервоприводи і довго думав, що на них зробити. Мій друг запропонував мені спробувати зробити чотириногого ходячого робота на двох сервоприводах і показав відео з таким роботом на YouTube. Я зацікавився і вирішив зробити щось подібне. Я почав розробляти свого ходячого робота з двох сервоприводів і MSP430 launchpad, і результат перевершив мої очікування. Використовуваний тут метод керування сервоприводами відрізняється від звичайного апаратного ШІМ. Я використовував кільцевий буфер для зберігання позицій сервоприводів і значень на виході. Для цього використовується лише переривання таймера. Такий метод зазвичай застосовується в дешевих мікроконтролерах з обмеженим апаратним ШІМ. Такий програмний ШІМ не є ідеальним, але його вистачає для керування сервоприводами. За допомогою цього методу я можу контролювати більше сервоприводів, використовуючи додаткові висновки вводу/виводу.
Програма для MSP430 пишеться на асемблері тільки тому, що я хочу попрактикуватися в цій мові програмування. Я використав асемблер naken430asm для Linux.
Спосіб переміщення робота
Уявіть, як ходить ящірка або крокодил. Він піднімає одну ногу, рухає її вперед і опускає її. Це робиться по черзі з усіма чотирма лапами, і в результаті він рухається. Це означає, що нам також потрібно піднімати ноги. Але якщо ми зробимо робота, як на верхньому малюнку, то ноги будуть постійно контактувати з землею і руху не буде. Щоб подолати цю проблему, необхідно зробити робота так, як показано на другому малюнку. Між двома площинами з сервоприводами є невеликий нахил.
Схема робота
Схема дуже проста. Потрібно лише підключити сервоприводи до контактів P1.1 і P1.2 мікроконтролера MSP430G2231 і підключити живлення. Я використав старий акумулятор 3.7V Nokia BL-5C.
Характеристика сервопривода: Серводвигун 10г/1,2кг/0.09с Крутний момент: 1.4kg/cm @ 4.8v, 1.6kg/cm @ 6v Вага: 10г Швидкість: 0.10/60deg @ 4.8v, 0.09/60deg @ 6v
Асемблер Naken430asm є на сайті Майка Кона
- ti.rar (2 Кб)