Робот следующий по линии. Для выставки

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

Re: Робот следующий по линии. Для выставки

Сообщение overlocker » 18 май 2008, 11:33

Столкнулся с трудноcтями при управлении сервой, серва futaba s3003.
В даташите на нее http://www.servocity.com/html/s3003_servo_standard.html (ну эт очень громко - даташит) указаны длительности импульса от 1520 до 1900
На практике оказалось около 100 - 700, эта неточность порождает проблему: не могу выставить длительность импульса для среднего положения - робот уходит в сторону.
Есть там еще строчка угол 45 град. - 400 мкс, но эт не совсем середина.

Мож из-за того, что я тактовый генератор внутренний использую, а он не есть точный?

Добавлено спустя 6 минут 3 секунды:
2-= Александр =-
В принципе такого робота можно сделать только на TL494 и паре операционников.
Обратную связь от двух фото-транзисторов заводим на + и - операционника, а его втыкаем в TL494. Получается что если у нас робот съехал в одну сторону - 494 снижает скважность ШИМа и серва крутит в одну сторону. Если наоборот - то в другую! Ну, там коэф. усиления подстроить чтоб не олтало его сильно и все дела! А главное питание там от 5 до 15 спокойно, никакого программирования и все просто как топор!


Сей способ точно соотвествует моему принципу: более простое - более надежное. )))
Тем более микрушка сия есть в наличии и рассыпуха для нее.

Токо мне легче в цифре разобраться, чем в аналоге. ((( Эт как запасной-паралельный вариант оставлю.
Аватара пользователя
overlocker
 
Сообщения: 137
Зарегистрирован: 22 июл 2006, 13:32
Откуда: Украина. г. Прилуки
прог. языки: basic
ФИО: щербина анатолий

Re: Робот следующий по линии. Для выставки

Сообщение overlocker » 20 май 2008, 21:47

Новая проблема:
Скорость маршевого двигателя очень большая. (((
Обрезал ШИМом до четырех вольт - всеравно очень быстро.
Обрезал до трех - не стартует.
Кратковременно до 4 вольт для старта, а потом до трех - поехал, но, понятно, всеравно очень быстро. (((
Движков в гамазине меньше 14000 обротов 3-6 вольт нету. (((
Надо редуктор переделывать, добавлять еще одну шестерню. (((
А там такая конструкция.... каждая деталь продумана, грех переделывать. (((

Вопрос!
Ктонить развлекался перемоткой движков. И вообще, имеет ли это смысл?
Аватара пользователя
overlocker
 
Сообщения: 137
Зарегистрирован: 22 июл 2006, 13:32
Откуда: Украина. г. Прилуки
прог. языки: basic
ФИО: щербина анатолий

Re: Робот следующий по линии. Для выставки

Сообщение -= Александр =- » 21 май 2008, 13:56

Проще наверно купить движок с редуктором от стеклоподъемника или дворников жигулей. Стоит копейки, а скорость и крутящий момент - самое то.
Ниндзя - круче всех. Они умеют ходить по воде, делить на ноль и угадывать шаффл в АйПоде.
Аватара пользователя
-= Александр =-
Мастер Самоделкин
 
Сообщения: 3678
Зарегистрирован: 11 окт 2004, 19:20
Откуда: Россия, СПб
прог. языки: C/C++, Python, asm
ФИО: Курмис Александр Андреевич

Re: Робот следующий по линии. Для выставки

Сообщение overlocker » 23 май 2008, 10:35

2-= Александр =-
Проще наверно купить движок с редуктором от стеклоподъемника или дворников жигулей. Стоит копейки, а скорость и крутящий момент - самое то.

Размер большой. Хотя я кадато с ураловских подъемников движки видел (вроде японские) дык те маленького размера.

Нашел Тамиевский планетарный редутор. Передаточное число от 1 к 5 до 1 к 100. Двигатель правда маломощный, но, думаю, при 1 к 25 тяги хватит. Правда выходной вал очень толстый, шестерня не налазит... придеться на станке стачивать. Но эт мелочи. )))
Аватара пользователя
overlocker
 
Сообщения: 137
Зарегистрирован: 22 июл 2006, 13:32
Откуда: Украина. г. Прилуки
прог. языки: basic
ФИО: щербина анатолий

Re: Робот следующий по линии. Для выставки

Сообщение overlocker » 28 май 2008, 10:17

Переделал редуктор.
На валу и шестерене нарезал резьбу - пулучилось достаточно надежно.
Так как планетарка+двигун более длинные чем родимый двигун, пришлось заменить серву на другую с таким же тяговым усилием, но меньшего размера.
P1010012_resize.jpg

Пришла мысль, где взять импульсный понижающий ДЦ-ДЦ преобразователь: автозарядка для мобилки вход до 24 вольт, выход -5,5 вольта, что доктор прописал.
P1010024_resize.jpg
Аватара пользователя
overlocker
 
Сообщения: 137
Зарегистрирован: 22 июл 2006, 13:32
Откуда: Украина. г. Прилуки
прог. языки: basic
ФИО: щербина анатолий

Re: Робот следующий по линии. Для выставки

Сообщение overlocker » 01 июн 2008, 22:22

Дабы понизить напряжение до 5,6 МК и серву подключил на первое время через диоды.
Четыре глаза TCRT5000 через компаратор к МК.

Так и не решил проблемму большого радиуса разворота. Как минимум три корпуса. Тоесть линию пришлось рисовать с плавными поворотами.
Отличное ездит по часовой и съежает када против . Спасает то, что нормально линию находит.

Счас бъюсь над усовершенствонием проги и поиском оптимальных углов датчиков.
P1010026.JPG
Аватара пользователя
overlocker
 
Сообщения: 137
Зарегистрирован: 22 июл 2006, 13:32
Откуда: Украина. г. Прилуки
прог. языки: basic
ФИО: щербина анатолий

Re: Робот следующий по линии. Для выставки

Сообщение Master » 01 июн 2008, 23:51

Видео в студию.
Аватара пользователя
Master
 
Сообщения: 4468
Зарегистрирован: 21 дек 2006, 19:56
Откуда: Украина, г.Одесса
прог. языки: Delphi и С

Re: Робот следующий по линии. Для выставки

Сообщение overlocker » 02 июн 2008, 20:07

Видео.
Движение по часовой стрелке:
036.rar
(1.82 МиБ) Скачиваний: 50


И против:
037.rar
(858.41 КиБ) Скачиваний: 40
Аватара пользователя
overlocker
 
Сообщения: 137
Зарегистрирован: 22 июл 2006, 13:32
Откуда: Украина. г. Прилуки
прог. языки: basic
ФИО: щербина анатолий

Re: Робот следующий по линии. Для выставки

Сообщение space » 02 июн 2008, 22:06

overlocker писал(а):Ктонить развлекался перемоткой движков. И вообще, имеет ли это смысл?

Пробовал, но дельного ничего не получилось :(

Мафынка ничего так получилась, жаль только, что медленно
https://vk.com/ledscale - платы, vk.com/ledscale3dprintig - 3Д печать\моделирование, vk.com/ledrenovation- ремонт светодиодных источников света
Аватара пользователя
space
 
Сообщения: 565
Зарегистрирован: 17 июн 2007, 23:44
Откуда: Тула
прог. языки: Bascom AVR Basic, CodeVisionAVR
ФИО: Замотаев Кирилл Игоревич

Re: Робот следующий по линии. Для выставки

Сообщение overlocker » 03 июн 2008, 00:50

2space
Над скорость работаем. (;

[color=#00BF00]2Олл
Код: Выделить всё
Код на БАСКОМАВР, критика приветствуется, так как чувствую - шото не то нахомутал...
'-----------------------------------------------------------------------------------------
'name                     : not_good_follow.bas
'copyright                : (c) Overlocker
'purpose                  : test file for M16 support
'micro                    : Mega16
'suited for demo          : yes
'-----------------------------------------------------------------------------------------

$regfile = "m16def.dat"                                     ' Подключаем спецификацию
$crystal = 1000000                                          ' Частота кристала
$baud = 19200
$hwstack = 32                                               ' Стек аппаратный
$swstack = 10                                               ' Стек программный
$framesize = 40                                             ' default use 40 for the frame space

Config Timer1 = Pwm , Prescale = 1 , Compare A Pwm = Clear Up , Compare B Pwm = Clear Up       ' Включаем ШИМ
Config Timer0 = Pwm , Prescale = 1 , Compare A Pwm = Clear Up , Compare B Pwm = Clear Up

Config Pind.4 = Output                                      'PD6 - выход, маршевый двигатель
Config Pind.5 = Output                                      'PD6 - выход, маршевый двигатель

Config Pinc.4 = Output                                      'PB4 - выход, серва

Config Pina.1 = Input                                       'PA1 - выход, крайний левый датчик
Config Pina.3 = Input                                       'PA3 - выход, левый
Config Pina.5 = Input                                       'PA5 - выход, правый
Config Pina.7 = Input                                       'PA7 - выход, крайний правый


Dim A As Long                                               'Угол поворота
A = 340                                                     'Угол 0 град

1:                                                          'Основной цикл программы
Do

Compare1b = 210                                             'ШИМ на 210 (около 2,5 вольт на движке)

If A < 200 Then
A = 200
Else
End If

If A > 500 Then
A = 500
Else
End If


If Pina.1 = 0 And Pina.3 = 0 And Pina.5 = 0 And Pina.7 = 0 Then       'Когда на всех черный - прямо
A = 340 : Pulseout Portc , 4 , A
Waitms 20
Else
End If


If Pina.1 = 0 And Pina.3 = 0 And Pina.5 = 0 And Pina.7 = 0 And A < 340 Then       'Когда на всех черный - немного вправо
A = 360 : Pulseout Portc , 4 , A
Waitms 20
Else
End If

If Pina.1 = 0 And Pina.3 = 0 And Pina.5 = 0 And Pina.7 = 0 And A > 340 Then       ''Когда на всех черный - немного влево
A = 320 : Pulseout Portc , 4 , A
Waitms 20
Else
End If


If Pina.1 = 1 And Pina.3 = 0 And Pina.5 = 0 And Pina.7 = 0 And A < 340 Then       'Когда черный на двух справа - вправ +
A = A - 5 : Pulseout Portc , 4 , A
Waitms 20
Else
End If

If Pina.1 = 0 And Pina.3 = 0 And Pina.5 = 0 And Pina.7 = 1 And A > 340 Then       'Когда черный на двух слева - влево -
A = A + 5 : Pulseout Portc , 4 , A
Waitms 20
Else
End If




If Pina.3 = 0 And Pina.5 = 0 And A < 340 Then               'Наверное не надо...
A = A - 1 : Pulseout Portc , 4 , A
Waitms 20
Else
End If

If Pina.3 = 0 And Pina.5 = 0 And A > 340 Then               'Наверное не надо...
A = A + 1 : Pulseout Portc , 4 , A
Waitms 20
Else
End If

Gosub Left_d                                                'Подпрограмма, датчик справа
Gosub Right_d                                               'Подпрограмма, датчик слева

Loop                                                        'Лупим
End                                                         'Конец программы

Left_d:
If Pina.1 = 0 And Pina.5 = 1 Then
A = A - 10 : Pulseout Portc , 4 , A
Waitms 10
End If
Return

Right_d:
If Pina.7 = 0 And Pina.3 = 1 Then
A = A + 10 : Pulseout Portc , 4 , A
Waitms 10
End If
Return[/color]
Аватара пользователя
overlocker
 
Сообщения: 137
Зарегистрирован: 22 июл 2006, 13:32
Откуда: Украина. г. Прилуки
прог. языки: basic
ФИО: щербина анатолий

Re: Робот следующий по линии. Для выставки

Сообщение Кирилл » 03 июн 2008, 16:57

А не проще ли вместо того чтоб каждую ножку по отдельности назначать на вход/выход писать вот так к примеру
Код: Выделить всё
Ddrb = &B11001111

а вместо всех IFоф поставить Case?
Кирилл
 
Сообщения: 432
Зарегистрирован: 20 окт 2005, 16:11
Откуда: Вильнюс,Литва
прог. языки: Basic

Re: Робот следующий по линии. Для выставки

Сообщение overlocker » 03 июн 2008, 22:13

2Кирилл
А нету случайно исходничокв на васике с кейсами. Я с ними не работал никада. ((((
Но что-то в Си видел... А Си для мну глухой лес.
Аватара пользователя
overlocker
 
Сообщения: 137
Зарегистрирован: 22 июл 2006, 13:32
Откуда: Украина. г. Прилуки
прог. языки: basic
ФИО: щербина анатолий

Re: Робот следующий по линии. Для выставки

Сообщение Digit » 04 июн 2008, 08:37

На васике:
Код: Выделить всё
SELECT CASE variable_name
   CASE 1
        'code for variable_name=1 here
   CASE 2
        'code for variable_name=2 here
   CASE ELSE
        'code for other variable_name
END SELECT


Если мне память не изменяет оно вот так. Но под АВР на васике не программировал никогда, поэтому если там синтаксис отличается от "обычного васика", то сорьки :)
злой полицейский
Аватара пользователя
Digit
 
Сообщения: 3339
Зарегистрирован: 27 ноя 2004, 00:42
Откуда: совсем Москва
ФИО: Григорий

Re: Робот следующий по линии. Для выставки

Сообщение EdGull » 04 июн 2008, 09:13

так там еще есть и ELSEIF
Аватара пользователя
EdGull
 
Сообщения: 10211
Зарегистрирован: 28 дек 2004, 20:33
Откуда: Тольятти
Skype: Ed_Gull
прог. языки: Bascom AVR Basic
ФИО: Гуль Эдуард Викторович

Re: Робот следующий по линии. Для выставки

Сообщение overlocker » 04 июн 2008, 14:12

2EdGull
Ооо, а у тебю примеров програмок для АВР с кейсами нету, проэкт таки у вас продвинутый, может уже и библиотека текстов уже есть.
В тематическом форуме уже сидел. У тя на сайте тоже. (;
Аватара пользователя
overlocker
 
Сообщения: 137
Зарегистрирован: 22 июл 2006, 13:32
Откуда: Украина. г. Прилуки
прог. языки: basic
ФИО: щербина анатолий

Пред.След.

Вернуться в Идеи

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 48