roboforum.ru

Технический форум по робототехнике.


Управление сервопривода от компьютера

Раздел создан специально для людей которым интересна робототехника, но в силу разных причин они не знают с чего начать.
Задавайте ваши вопросы, какими бы простыми они не казались, постоянные посетители форума постараются ответить на них по мере своих сил.
Робот своими руками. Самодельный робот.

Сообщение AlphA » 24 окт 2005, 11:06

KiCom писал(а):...в адресс оперативки с адресом 378 так ?


Не оперативки! Это адрес порта. Вещи разные.
AlphA
 
Сообщения: 111
Зарегистрирован: 21 апр 2005, 01:19
Откуда: Екб

Сообщение KiCom » 24 окт 2005, 11:42

Такс, преплыли теперь я вообще нечего не понимаю, как я собирался это сделать на си:

int *p;
p=0x378;
*p=255;

Вопрос к тем кто знает си, это так делаеться или нет, если нет то как?
KiCom
 
Сообщения: 345
Зарегистрирован: 22 окт 2005, 11:15
Откуда: Красноярск

Сообщение Tracer » 24 окт 2005, 12:38

Так ты запишеш в я чейку памяти с адресом 0х378
А тебе нужно написать в порт номер 0х378

Пространство адресов ячеек памяти и пространство портов различны
Для записи (чтения) в (из) порта используют outp() (inp())

Посмотри здесь вроде как в тему
http://users.swing.be/philippe.jadin/servoen.htm
Аватара пользователя
Tracer
 
Сообщения: 195
Зарегистрирован: 24 ноя 2004, 12:36
Откуда: Харьков

Сообщение setar » 24 окт 2005, 17:50

8) готовый девайс http://www.rentron.com/SerialServo.htm
управление 8ю сервами через rs232
Аватара пользователя
setar
Site Admin
 
Сообщения: 10989
Зарегистрирован: 04 окт 2004, 12:58
Откуда: St.Petersburg
Skype: taranenko.sergey
ФИО: Сергей Тараненко

Сообщение KiCom » 24 окт 2005, 19:02

rs232 меня сейчас мало интересует т.к. надо еще прошивать чип, мне бы с LPT разобраться, кстати никто не знает как можно в си организовать задержку равную например 1.23 милесекунде?
KiCom
 
Сообщения: 345
Зарегистрирован: 22 окт 2005, 11:15
Откуда: Красноярск

Сообщение -= Александр =- » 25 окт 2005, 01:09

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

Сообщение ASin » 25 окт 2005, 01:36

KiCom писал(а):rs232 меня сейчас мало интересует т.к. надо еще прошивать чип, мне бы с LPT разобраться, кстати никто не знает как можно в си организовать задержку равную например 1.23 милесекунде?


Стандарта, вроде, нет. В WinAPI есть функция Sleep(long msec);
Точность, соответственно, до миллисекунды.
В линукс/BSD есть usleep, в микросекундах.
Только это всё безнадёга, тем более в виндах... Задержка будет не менее заданной, а на самом деле -- как бог на душу наложит. Для точности надо real-time систему ставить.
Имхо, самое оно -- выделить под серву отдельный контроллер.
ASin
 
Сообщения: 155
Зарегистрирован: 18 дек 2004, 03:14
Откуда: Москва

Сообщение KiCom » 25 окт 2005, 14:31

Ну ладно допустим микроконтролер, как его сделать? Как я понимаю нужно где-то найти програмку (прошивку) и зашить ее в чип, для того чтобы зашить в чип нужна "прошивалка". Где-то я тут слышал про пять проводков что такое незнаю, для того чтобы прошивалка работала ей нужен какойто софт где его можно взять? Вообще разясните если не трудно.
KiCom
 
Сообщения: 345
Зарегистрирован: 22 окт 2005, 11:15
Откуда: Красноярск

Сообщение -= Александр =- » 25 окт 2005, 19:57

1)Компилятор для контроллера создает прошивку (я юзаю ICC http://www.imagecraft.com)
2)Прошивалка состоит из 5 проводков от LPT к контроллеру.
3)Прога для прошивалки http://www.lancos.net Хотя компилер и сам прошить может.
Все просто!  :wink:
Аватара пользователя
-= Александр =-
Мастер Самоделкин
 
Сообщения: 3678
Зарегистрирован: 11 окт 2004, 19:20
Откуда: Россия, СПб
прог. языки: C/C++, Python, asm
ФИО: Курмис Александр Андреевич

Сообщение KiCom » 26 окт 2005, 17:15

Ну это хорошо что так все просто, какой контролер мне нужен?, тоесть придя в радио магазин что мне нужно попросить и сколько это примерно стоит?, потом у нас есть контролер с прошивкой, что дальше какая нужна обвязка, и наконец какой сигнал посылает компьютер.
KiCom
 
Сообщения: 345
Зарегистрирован: 22 окт 2005, 11:15
Откуда: Красноярск

Сообщение -= Александр =- » 26 окт 2005, 18:35

1) Контроллер. Для начала вполне хватит ATTINY2313
Если такого нет - ATMEGA8 (стоит дороже)
или ATMEGA48 (может не поддерживаться старыми компилерами!!!)
2)Кварц на 11.059 МГц
3)2 кондера 22 пикофарада (керамика)
4)Пару электролитов на 10 мкФ
5)Микросхема MAX232 желательно с буквами CPE
6)5 электролитов на 1 мкФ 16 вольт (для этой микросхемы)

Если обратной связи делать не будешь и жаба душит - пункты 5 и 6 замени на резистор 22 кОм.

7)кусок провода (3 или 4-жильного) и разъем в COM-порт (DB9 мама)
8 )стабилизатор 7805
9)еще советую десяток самых дешевых светодиодов, резисторов на 100 ом и 1 кОм и кнопачек несколько, для освоения контроллера и вообще для отладки пригодятся...

Для программатора:
1)Разъем в LPT (DB25 папа)
2)пара метров шлейфа на 10 проводов
3)разъем врезной (вроде называется IDC10) на шлейф (мама)
4)полсочку контактов на плату к этому разъему (PLS или DPL)

Советую на все разъемы (кроме IDC) купить корпуса, удобнее будет втыкать и отключать...

Ну и естественно понадобится текстолит, припой и флюс (рекомендую ЛТИ-120).  Паяльник должен быть не больше 20ти ватт, а то поджаришь контроллер! Схемка тут простая, так что можешь собирать на макетной плате. Но она дорого стоит (в 10 раз дороже) или покупай просто текстолит, хлорное железо и хороший маркер чтоб разводку рисовать...

Схема будет похожа на эту:

Изображение

Рублей эдак в 200-250 должно уложиться.

По поводу сигналов с компа не волнуйся, это все хардово реализовано, ты в контроллере получишь готовые байты, те что с компа отправишь.

Как все купишь - скажи. Дам ссылочки откуда софт качать и лом к нему пришлю.  :wink: Если выберешь ICCAVR - там все это в примерах будет (работа с портом и с сервой) останется только соединить в одну программу.

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

Сообщение KiCom » 27 окт 2005, 12:08

Все купил кроме кварца, на эту частоту немогу найти, нет но есть на 11,990 может он подойдет? Конечная цель это манипулятор. Вообще до того как я нашел этот форум я думал что програмирование контролеров это вообще темный лес, а оказываеться все достаточо просто и понятно.
KiCom
 
Сообщения: 345
Зарегистрирован: 22 окт 2005, 11:15
Откуда: Красноярск

Сообщение ASin » 27 окт 2005, 12:10

KiCom писал(а):Все купил кроме кварца, на эту частоту немогу найти, нет но есть на 11,990 может он подойдет? Конечная цель это манипулятор. Вообще до того как я нашел этот форум я думал что програмирование контролеров это вообще темный лес, а оказываеться все достаточо просто и понятно.


А какой контроллер?
tiny/mega и без кварца заработают
ASin
 
Сообщения: 155
Зарегистрирован: 18 дек 2004, 03:14
Откуда: Москва

Сообщение KiCom » 27 окт 2005, 12:12

Контролер ATTYNI2313
KiCom
 
Сообщения: 345
Зарегистрирован: 22 окт 2005, 11:15
Откуда: Красноярск

Сообщение -= Александр =- » 27 окт 2005, 12:30

Без кварца конечно заработает, но для связи по COM-порту надо частоту специфическую иметь...

Подойдет любой из вот этих:

4.9152
7.3728
9.2160
11.0592
14.7456
18.432 (если проц на нем может работать. Т2313 может, М8 не может)
Аватара пользователя
-= Александр =-
Мастер Самоделкин
 
Сообщения: 3678
Зарегистрирован: 11 окт 2004, 19:20
Откуда: Россия, СПб
прог. языки: C/C++, Python, asm
ФИО: Курмис Александр Андреевич

Пред.След.

Вернуться в Новичкам или основы основ роботостроения.

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

Сейчас этот форум просматривают: Yandex [Bot] и гости: 5