roboforum.ru

Технический форум по робототехнике.
Текущее время: 02 дек 2024, 15:13

Часовой пояс: UTC + 4 часа




Начать новую тему Ответить на тему  [ Сообщений: 111 ]  На страницу Пред.  1, 2, 3, 4, 5, 6, 7, 8  След.
Автор Сообщение
 Заголовок сообщения: Re: "Robbe"
СообщениеДобавлено: 11 окт 2009, 23:07 
Не в сети
Аватара пользователя

Зарегистрирован: 17 июн 2007, 23:44
Сообщения: 565
Откуда: Тула
прог. языки: Bascom AVR Basic, CodeVisionAVR
ФИО: Замотаев Кирилл Игоревич
Чтож на ютуб по каким то не понятным причинам видео не грузится, поэтому загрузил на ютубру. ТОЛЬКО ЗВУК ЗАРАНЕЕ ВЫКЛЮЧИТЕ. Почему то после загрузки вместо звука шум.
http://rutube.ru/tracks/2478545.html?v= ... 235a93b5d1


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: "Robbe"
СообщениеДобавлено: 12 окт 2009, 09:22 
Не в сети
Аватара пользователя

Зарегистрирован: 28 авг 2009, 12:50
Сообщения: 930
Откуда: Волжский
Skype: pashok0988
ФИО: Павел Петрович
Выглядит прелесно :D

Еще бы чуть чуть по плавнее сделать и вообще будет айс :twisted:


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: "Robbe"
СообщениеДобавлено: 12 окт 2009, 10:14 
Не в сети
Аватара пользователя

Зарегистрирован: 04 дек 2008, 22:44
Сообщения: 4363
Откуда: Камышин
Skype: galk-aleksandr1
прог. языки: Kotlin, Java, C, C++, Assm, BasCom, VB, php
ФИО: Галкин Александр Владимирович
Молодец!

_________________
if(!Operate) Read(pDatasheet);


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: "Robbe"
СообщениеДобавлено: 12 окт 2009, 15:14 
Не в сети
Аватара пользователя

Зарегистрирован: 17 июн 2007, 23:44
Сообщения: 565
Откуда: Тула
прог. языки: Bascom AVR Basic, CodeVisionAVR
ФИО: Замотаев Кирилл Игоревич
pashteet писал(а):
Выглядит прелесно :D

Еще бы чуть чуть по плавнее сделать и вообще будет айс :twisted:

и так плавно. просто скорость побольше сделал.

вот думаю стоит ещё ставить дальномеры для определения препятствия или можно всё таки до идеала довести один дальномер на серве :idea: :?:


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: "Robbe"
СообщениеДобавлено: 30 янв 2010, 01:51 
Не в сети
Аватара пользователя

Зарегистрирован: 17 июн 2007, 23:44
Сообщения: 565
Откуда: Тула
прог. языки: Bascom AVR Basic, CodeVisionAVR
ФИО: Замотаев Кирилл Игоревич
Народ мож кто идейку подкинет . Уже всю голову сломал :o как лучше будет управлять 3-мя дальномерами работающих на объезд препятствий. Значит 3 датчика зафиксировано на платформе один прямо другие направлены вправо и влево под углом 45. Один на подвижной туреле(движения влево-вправо, вверх-вниз, но он скорей всего будет на измерения расстояния работать, поэтому по возможности его не трогаем). С боковым всё понятно препятствие слева поворачиваем вправо и т.д. А как быть с центральным. Допустим ножка стула, не делать же отъезд назад чтоб робот поехал снова вперёд и наткнулся на эту ножку снова. А разворот лишь в одну сторону не то. Если есть идеи внимательно слушаю


Вложения:
CIMG2816.JPG
CIMG2816.JPG [ 191.21 КиБ | Просмотров: 2015 ]
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: "Robbe"
СообщениеДобавлено: 30 янв 2010, 02:50 
Не в сети
Аватара пользователя

Зарегистрирован: 19 янв 2010, 14:51
Сообщения: 979
Откуда: Петрозаводск
прог. языки: C, FBD, Wiring-Processimg,,,LD, SFC, ST...
ФИО: Вадим
Можно ввести несколько переменных (типа память :wink: ) и использовать результаты накопленных в них событий... сколько до этого было поворотов направо или налево.... сколько пройдено расстояния вообще и от последнего поворота...например: если последний поворот был налево и пройдено большое расстояние (например по времени) то поворот налево ещё раз, так как впереди скорее всего стена... :crazy: ну или, как то так...

_________________
Роботы, уже среди нас...
Прошу прощения за аватар, никак схему динамической индикации не могу настроить :)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: "Robbe"
СообщениеДобавлено: 30 янв 2010, 15:09 
Не в сети
Аватара пользователя

Зарегистрирован: 17 июн 2007, 23:44
Сообщения: 565
Откуда: Тула
прог. языки: Bascom AVR Basic, CodeVisionAVR
ФИО: Замотаев Кирилл Игоревич
Во спасиб, навёл на нужные мысли :wink: . Ну несколько не обязательно достаточно одной будет. Можно попробовать сделать переменную которая будет изменяться. Типо первый раз перед сабой видит стену, поворачивает влево и изменяет переменную с 0 на 1. А в след. раз когда увидит препятствие уже будет проверять чему равна данная переменная если 0, значит влево, если 1 значит вправо, затем обнуляем переменную.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: "Robbe"
СообщениеДобавлено: 30 янв 2010, 23:50 
Не в сети
Аватара пользователя

Зарегистрирован: 19 янв 2010, 14:51
Сообщения: 979
Откуда: Петрозаводск
прог. языки: C, FBD, Wiring-Processimg,,,LD, SFC, ST...
ФИО: Вадим
Идея была пошире конечно...но принцип один, использование памяти. Причём я думаю, что зацикливаться на бинарных ячейках не стоит. Гораздо интересней использовать несколько ячеек, увеличивая значение одной из них, при наступлении события, а затем сравнивать накопленные события и выбирать действия. При достижении заполнения одной из связанных ячеек (например переменные - количество поворотов направо и к-во налево) делить значения обоих ячеек на 2...не давая им переполнится. И на основе разницы значений в них, "знать" куда мы давно не поворачивали... лучше если это будет небольшой массив переменных, в которых запоминаются разные события и отдельная ветка программы (возможно вызываемая по таймеру) которая и обрабатывает этот массив, являющийся как-бы "виртуальными датчиками", для основной программы. Такой вот маленький и непредсказуемый мозг :crazy:

_________________
Роботы, уже среди нас...
Прошу прощения за аватар, никак схему динамической индикации не могу настроить :)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: "Robbe"
СообщениеДобавлено: 31 янв 2010, 00:25 
Не в сети
Аватара пользователя

Зарегистрирован: 17 июн 2007, 23:44
Сообщения: 565
Откуда: Тула
прог. языки: Bascom AVR Basic, CodeVisionAVR
ФИО: Замотаев Кирилл Игоревич
То что ты предлагал эт уж оч круто, но говорю на мысли нужные навёл. Пробовал заносить значение переменной в ячейку внешней памяти, но чёт не получилось. Датчик вообще перестал реагировать.
Код:
$regfile = "m16def.dat"
$crystal = 16000000

Config Adc = Single , Prescaler = Auto , Reference = Internal

Config Pind.2 = Output : M1f Alias Portd.2
Config Pind.3 = Output : M1b Alias Portd.3
Config Pind.4 = Output : M2f Alias Portd.4
Config Pind.5 = Output : M2b Alias Portd.5

Enable Interrupts

Dim АЦП As Word , Q As Byte
Q = Inp(&H800)                      'Q равняется ячеки памяти по адресу  &H800 
   
Do

If АЦП >= 500 Then
If Q = 0 Then : Gosub Разворот_вправо : End If
If Q = 1 Then : Gosub Разворот_влево : End If
Else : Gosub Вперёд : End If
Loop

Вперёд:

M1f = 1 : M2f = 1
M1b = 0 : M2b = 0
Return

Разворот_вправо:
Out &H800 , 1  ' записать 1 по адресу &H800
M1f = 1 : M2f = 0
M1b = 0 : M2b = 1
Return

Разворот_влево:
Out &H800 , 0
M1f = 0 : M2f = 1
M1b = 1 : M2b = 0
Return

Сделал по другому и работает :Yahoo!: :
Код:
$regfile = "m16def.dat"
$crystal = 16000000

Config Adc = Single , Prescaler = Auto , Reference = Internal

Config Pind.2 = Output : M1f Alias Portd.2
Config Pind.3 = Output : M1b Alias Portd.3
Config Pind.4 = Output : M2f Alias Portd.4
Config Pind.5 = Output : M2b Alias Portd.5

Enable Interrupts

Dim АЦП As Word , Q As Bit

Q = 0

Do
Start Adc : АЦП = Getadc(2)
If АЦП >= 500 Then : Gosub Отъехать_от_препятствия_спереди : Else : Gosub Вперёд : End If

Loop

Вперёд:
M1f = 1 : M2f = 1
M1b = 0 : M2b = 0
Return

Отъехать_от_препятствия_спереди:
   M1f = 0 : M2f = 0
   M1b = 1 : M2b = 1
   Wait 1

         If Q = 0 Then
      M1f = 1 : M2f = 0
   Else
      M2f = 1 : M1f = 0
   End If
   Wait 1
   If Q = 0 Then
      M2f = 1  : M1f = 0
   Else
      M1f = 1  : M2f = 0
   End If
   'переустанавливаем переменную
   If Q = 0 Then
      Q = 1
   Else
      Q = 0
   End If


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: "Robbe"
СообщениеДобавлено: 31 янв 2010, 00:43 
Не в сети
Аватара пользователя

Зарегистрирован: 04 окт 2007, 16:11
Сообщения: 1027
Откуда: иваново
Skype: cybsys1
прог. языки: Delphi
ФИО: Павел
Идея наверное древна как сам мир, но, а что если с помощью этих дальномеров сканировать область перед роботом (или да же вокруг него). Потом с помощью "графика" определить где находится ножка стула, и сделать уже вывод куда поворачивать/ехать.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: "Robbe"
СообщениеДобавлено: 31 янв 2010, 00:47 
Не в сети
Аватара пользователя

Зарегистрирован: 17 июн 2007, 23:44
Сообщения: 565
Откуда: Тула
прог. языки: Bascom AVR Basic, CodeVisionAVR
ФИО: Замотаев Кирилл Игоревич
Ды лан, зачем так всё усложнять. Да и если сканирование нужно, то это можно сделать с помощью одного дальномера, который вращается.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: "Robbe"
СообщениеДобавлено: 31 янв 2010, 00:52 
Не в сети
Аватара пользователя

Зарегистрирован: 04 окт 2007, 16:11
Сообщения: 1027
Откуда: иваново
Skype: cybsys1
прог. языки: Delphi
ФИО: Павел
Ну да, для этого и одного дальномера хватило бы. :)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: "Robbe"
СообщениеДобавлено: 31 янв 2010, 00:53 
Не в сети
Аватара пользователя

Зарегистрирован: 19 янв 2010, 14:51
Сообщения: 979
Откуда: Петрозаводск
прог. языки: C, FBD, Wiring-Processimg,,,LD, SFC, ST...
ФИО: Вадим
CiSi писал(а):
...а что если с помощью этих дальномеров сканировать область перед роботом (или да же вокруг него)..

интересная мысль! если механика позволит "поводить носом", перед препятствием слева на право :D типа "обнюхать" и решить, что дальше делать :good:

_________________
Роботы, уже среди нас...
Прошу прощения за аватар, никак схему динамической индикации не могу настроить :)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: "Robbe"
СообщениеДобавлено: 31 янв 2010, 01:03 
Не в сети
Аватара пользователя

Зарегистрирован: 04 окт 2007, 16:11
Сообщения: 1027
Откуда: иваново
Skype: cybsys1
прог. языки: Delphi
ФИО: Павел
Зачем механике позволять, там же на боте серва стоит с дальномером.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: "Robbe"
СообщениеДобавлено: 31 янв 2010, 01:15 
Не в сети
Аватара пользователя

Зарегистрирован: 19 янв 2010, 14:51
Сообщения: 979
Откуда: Петрозаводск
прог. языки: C, FBD, Wiring-Processimg,,,LD, SFC, ST...
ФИО: Вадим
Я о том, как это могло бы выглядеть с позиции имитации "домашнего животного" :D просто прикольно, обнухал с двух сторон и дальше...

_________________
Роботы, уже среди нас...
Прошу прощения за аватар, никак схему динамической индикации не могу настроить :)


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 111 ]  На страницу Пред.  1, 2, 3, 4, 5, 6, 7, 8  След.

Часовой пояс: UTC + 4 часа


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

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


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB
phpBB SEO