Перейти к содержимому

Фото
- - - - -

МК кто-нибудь программирует? PIC, AVR, ARM?


  • Вы не можете создать новую тему
  • Please log in to reply
313 ответов в этой теме

#61 Junk1e

Junk1e
  • Постоялец
  • 793 сообщений
  • Откуда:Тарту

Отправлено 08 Июнь 2010 - 10:36

Вырвиглаз, спасибо за ответ, начал копать в сторону прерываний - на самом деле не так страшен черт, как его малюют. Может кому понадобиться - небольшой ликбез.

kerf, на первых парах тебе простого программатора на LPT хватит (как раз-таки "на попробовать"), а впоследствии и самому можно спаять - в интернетах есть куча проэктов (usbasp, protoss и др.). Если планируешь эксперементировать, то обязательно обзаведись пружинной макетной платой - крайне удобная и полезная вещица.

Прикрепленные файлы

  • Прикрепленный файл  breadboard.jpg   72,17К   57 Количество загрузок

  • 0

#62 Вырвиглаз

Вырвиглаз

    Убийца травы

  • Постоялец
  • 15 501 сообщений
  • Откуда:Эстония, Таллин

Отправлено 08 Июнь 2010 - 17:14

kerf, совет такой - начинать даже не с выбора МК и программатора. Начни с отладки. Если нет нормальной отладки, ничего толкового не напишешь. Изучай Протеус. Там АВР и ПИК представлены в большом ассортименте. Но я рекомендую начать с ПИК и купить программатор EXTRAPIC на сайте 5v.ru
Почему? Не потому, что я фанат микрочип. Просто документация на них написана людьми, дружащими со своей головой. АВР можно изучать по книжкам, но их документации - это полная мура. После микрочипа совершенно не воспринимаются.
Мой совет:
Proteus 7.6 SP4
EXTRAPIC
и пробный камень. Что нибудь типа PIC12F683 для начала или PIC16F689/690 для продолжения. У них не много ног, встроенный генератор и много всего полезного. Столько переферии есть только у АВР мега, да и то с натяжкой. АВР дешевы тогда, когда в них ничего нет.
  • 0
Кто живет и грешит в Эстонии, тот опять родится в Эстонии.

#63 kerf

kerf
  • Пользователь
  • 157 сообщений
  • Откуда:Таллинн

Отправлено 09 Июнь 2010 - 00:35

текс...
привет еще раз =)

ну макетную плату я приобрел, сам подумал что было бы неплохо без паяльника все делать,
а вот с программатором я конечно еще почитаю, повыбираю и скажу что решил =) мало ли остановите в последний момент

а еще вопрос кто где закупает "водичку" для травления плат? по-любому когда-нибудь понадобится
  • 0
0001 , 0010 , 0011 , 0100 , 0101 вышел зайчик погулять!
и где же смысл?
IAPB48

#64 Вырвиглаз

Вырвиглаз

    Убийца травы

  • Постоялец
  • 15 501 сообщений
  • Откуда:Эстония, Таллин

Отправлено 09 Июнь 2010 - 19:42

я хлорное железо привез из России. Здесь 100еек за 125г, в России 20р за 250г. Привез 7 банок. На долго хватит.
  • 0
Кто живет и грешит в Эстонии, тот опять родится в Эстонии.

#65 Junk1e

Junk1e
  • Постоялец
  • 793 сообщений
  • Откуда:Тарту

Отправлено 11 Июнь 2010 - 17:12

Вырвиглаз, а с персульфатом натрия случаем не было опыта? Может какие особенности есть при его использовании / рекомендации на личном опыте?
  • 0

#66 Вырвиглаз

Вырвиглаз

    Убийца травы

  • Постоялец
  • 15 501 сообщений
  • Откуда:Эстония, Таллин

Отправлено 11 Июнь 2010 - 18:38

Я был бы не против его попробовать. Боюсь, как бы он тонер не растворил, которым я рисунок на плате делаю. Хлорное железо пока метод проверенный. Единственный недостаток - раковину потом надо мыть тщательно, а то теща ругается. Да и нет пока особой необходимости. Я в минимализм ударился. У меня платы 30х30мм самые большие. Стараюсь все делать на SMD. Поэтому, одной банки железа хватает очень на долго.
  • 0
Кто живет и грешит в Эстонии, тот опять родится в Эстонии.

#67 Sergio

Sergio
  • Постоялец
  • 2 987 сообщений

Отправлено 11 Июнь 2010 - 18:52

Вырвиглаз, а с персульфатом натрия случаем не было опыта? Может какие особенности есть при его использовании / рекомендации на личном опыте?

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

Написал, потом заметил, что речь про персульфат натрия, а не аммония.
Это все про персульфат аммония, насчет натрия не знаю.

Сообщение изменено: Sergio (11 Июнь 2010 - 18:53 )

  • 0

#68 Вырвиглаз

Вырвиглаз

    Убийца травы

  • Постоялец
  • 15 501 сообщений
  • Откуда:Эстония, Таллин

Отправлено 26 Июнь 2010 - 00:19

Я тут с USB HID девайсами игрался. Сегодня запустил джойстик. Вот думаю, какой такой хитрый манипулятор сделать. Короче, можно сколько угодно осей и кнопок сделать. В этом и фишка. Можно полный симулятор автомобиля сделать с МКПП и реалистичным поворотом руля на 700 градусов. Можно что-нибудь галактическое забабахать, типа в Х3 играть... в общем, своей фантазии не хватает. Может чего вместе придумаем?
  • 0
Кто живет и грешит в Эстонии, тот опять родится в Эстонии.

#69 Sergio

Sergio
  • Постоялец
  • 2 987 сообщений

Отправлено 28 Июнь 2010 - 18:54

Я тут с USB HID девайсами игрался. Сегодня запустил джойстик. Вот думаю, какой такой хитрый манипулятор сделать. Короче, можно сколько угодно осей и кнопок сделать. В этом и фишка. Можно полный симулятор автомобиля сделать с МКПП и реалистичным поворотом руля на 700 градусов. Можно что-нибудь галактическое забабахать, типа в Х3 играть... в общем, своей фантазии не хватает. Может чего вместе придумаем?

Ну вот реалистичный симулятор автомобиля было бы неплохо. Соорудить кузов какой-нибудь, или взять готовый от драндулета со свалки, заместо лобовухи - LCD дисплей (или два). Комп с реалистичной игрой. Ну и поставить в каком-нибудь парке атракционов, или просто людном месте - деньги лопатой грести будешь. А если еще и легкую смену конфигурации сделаешь (легковуха, грузовик, трактор, Белаз) - будет еще круче. Может быть даже военным продашь за неплохие деньги.
  • 0

#70 Вырвиглаз

Вырвиглаз

    Убийца травы

  • Постоялец
  • 15 501 сообщений
  • Откуда:Эстония, Таллин

Отправлено 28 Июнь 2010 - 20:10

Ну вот реалистичный симулятор автомобиля было бы неплохо. Соорудить кузов какой-нибудь, или взять готовый от драндулета со свалки, заместо лобовухи - LCD дисплей (или два). Комп с реалистичной игрой. Ну и поставить в каком-нибудь парке атракционов, или просто людном месте - деньги лопатой грести будешь. А если еще и легкую смену конфигурации сделаешь (легковуха, грузовик, трактор, Белаз) - будет еще круче. Может быть даже военным продашь за неплохие деньги.

А сам симулятор мне тут в 3д студио рисовать? Нет уж, увольте. Я в первую очередь электронщик. Программирование для меня лишь средство воплотить в жизнь сложные проекты.
  • 0
Кто живет и грешит в Эстонии, тот опять родится в Эстонии.

#71 Sergio

Sergio
  • Постоялец
  • 2 987 сообщений

Отправлено 28 Июнь 2010 - 20:39

А сам симулятор мне тут в 3д студио рисовать?

Зачем? Есть же готовые.
  • 0

#72 Вырвиглаз

Вырвиглаз

    Убийца травы

  • Постоялец
  • 15 501 сообщений
  • Откуда:Эстония, Таллин

Отправлено 28 Июнь 2010 - 20:50

Зачем? Есть же готовые.

Да не, мне эта идея не особо нравится. Учитывая то, что народ ходит злой и голодный. Поломают-с :D
  • 0
Кто живет и грешит в Эстонии, тот опять родится в Эстонии.

#73 Sergio

Sergio
  • Постоялец
  • 2 987 сообщений

Отправлено 28 Июнь 2010 - 21:18

Да не, мне эта идея не особо нравится. Учитывая то, что народ ходит злой и голодный. Поломают-с :D

:) Могут и поломать. Ну тогда просто руль с педалями. Хотя это банально. У меня тоже туго с фантазией. Надо ДДоса ждать, что-нибудь присоветует.
  • 0

#74 rgty proekts

rgty proekts

    турист

  • Пользователь
  • 70 сообщений
  • Откуда:World

Отправлено 16 Июль 2010 - 16:28

а какая разница вот я к примеру с пиков начинал,
ведь главное цена и работоспособность , производительность
поскольку имея идею разработать схему можно любую и даже если поставить задачу, поверьте решений будет много, а победит тот кто сделает дешевле из доступных компонентов и главное будет работать.
помню ну не было у меня денег на покупку мк использовал мк для bios и все замечательно работает
  • 0
что ваш дройд делает под столом ?

#75 Вырвиглаз

Вырвиглаз

    Убийца травы

  • Постоялец
  • 15 501 сообщений
  • Откуда:Эстония, Таллин

Отправлено 16 Июль 2010 - 18:52

Да сейчас АВР цену поднял прилично на свои камушки. А пик наоборот снижает. Я вообще на серию К перехожу. Типа PIC18F14K50. На них и USB есть и памяти навалом. А цена... 30-40 крон. Вот это нормальный подход.
  • 0
Кто живет и грешит в Эстонии, тот опять родится в Эстонии.

#76 hdd21f

hdd21f
  • Новобранец
  • 4 сообщений

Отправлено 02 Август 2010 - 11:30

Привет!

Есть идея сделать аналог филипсовского амбилайта, настолько конечно аналог насколько это возможно сделать.
Сперва была слишком оптимистическая идея именно для телека, теперь для компа/телека (результаты хоть и разные, но всё в одном флаконе).
  • 0

#77 MB ee

MB ee
  • Пользователь
  • 55 сообщений
  • Откуда:Nõmme/Musta

Отправлено 03 Сентябрь 2010 - 00:09

Всем привет!
Кто-нибудь может вкрадце объяснить принцип написания хендлеров для прерываний на си? И есть ли как таковые общие принципы, или это всё очень индивидуально для каждого контроллера? Просмотрел кучу примеров
кодов в интернетах, сломал глаза, и так и не получилось из примеров общий для всех микроконтроллеров принцип вывести.Знаю, что прерывание можно обработать на ассемблере, но интересно по возможности именно на си сделать.
У меня контроллер вот такой:
http://www.phytec.co...M9-LPC3180.html

Хочу собрать на нём робота.В общем-то цель моя-научиться обхождению с контроллерами, так что буду тупо навешивать на него всё, что только не лень.А пока, задача в том, чтобы оснастить устройство сервомоторами.В контроллере есть специальный регистр для ШИМ, но при длине периода в 20 мс он не даст возможности точно установить пропорцию сигнала (так как ноль по сравнению с единицей уж слишком длинный), ну и шаг поворота соответственно около 20 градусов будет (сказочная точность ^_^ ), так что алгоритм с таймерами и интерраптами получается куда точнее. Кстати, а может серво всё-таки схавает сигнал и с более коротким периодом, скажем, 10 мс? :D
  • 0

#78 Sergio

Sergio
  • Постоялец
  • 2 987 сообщений

Отправлено 03 Сентябрь 2010 - 07:51

Кто-нибудь может вкрадце объяснить принцип написания хендлеров для прерываний на си? И есть ли как таковые общие принципы, или это всё очень индивидуально для каждого контроллера? Просмотрел кучу примеров
кодов в интернетах, сломал глаза, и так и не получилось из примеров общий для всех микроконтроллеров принцип вывести.

Общих примеров не получится, прерывания слишком зависят от архитектруры.
  • 0

#79 Вырвиглаз

Вырвиглаз

    Убийца травы

  • Постоялец
  • 15 501 сообщений
  • Откуда:Эстония, Таллин

Отправлено 03 Сентябрь 2010 - 08:24

MB ee, у тебя МК на архитектуре АРМ. У армов с прерываниями сложно. Сначала надо организоваться приорететы. Для векторов прерывания есть специальный стек, как на высших ядрах. Накапливаясь в стек, вызывается самый приоритетный вектор. По этому вектору запускается подпрограмма. Ваша задача - недопустить переполнения стека. Для этого надо выполнить два условия - либо прерываний должно быть не много, либо они должны быстро исполняться. Обычно, это не более двух десятков комманд на асме. Чаще всего, я туда ставлю работу с битовыми переменными - поднимаю или опускаю флаги по условию. А в основном цикле с этими флагами работаю.
На счет ШИМа. На такую длинну проводов никто сигнал с МК не тащит. Тем более, что у тебя напряжение портов 3.3в (ядра 1.8в). Так вот управляемый ключ надо ставить в непосредственной близости к МК. В твоем случае еще сложнее. АРМы быстрые, но порты у них слабые - 5мА (у пиков 20мА). Это значит, что время нарастания и спада фронта на могучем полевом транзисторе (с большой емкостью затвора) будет огромным. Надо использовать драйвер.
  • 0
Кто живет и грешит в Эстонии, тот опять родится в Эстонии.

#80 MB ee

MB ee
  • Пользователь
  • 55 сообщений
  • Откуда:Nõmme/Musta

Отправлено 03 Сентябрь 2010 - 11:57

Драйвер будет.Кстати, а есть ли возможность вместо драйвера использовать какой-нибудь дигитальный элемент, который бы съедал 3 вольта как логическую единицу, а на выходе выдавал эту самую единицу уже в правильном 5вольтовом формате?


На счет ШИМа. На такую длинну проводов никто сигнал с МК не тащит.


Я, быть может, некорректно выразился, но имел в виду период ШИМ сигнала, то есть расстояние между двумя передними фронтами.Должно ли оно для сервомотора быть 20 миллисекунд или же может быть меньше?

Насчёт прерываний: нашёл вот такой код


#pragma code high_vector=0x08
void high_vector() {
_asm
goto YourHighPriorityISRCode
_endasm
}
#pragma code

#pragma code low_vector=0x18
void low_vector() {
_asm
goto YourLowPriorityISRCode
_endasm
}
#pragma code

// interrupt handler routines
#pragma interrupt YourHighPriorityISRCode
void YourHighPriorityISRCode() {
if(PIR1bits.TMR1IF == TRUE) { // check interrupt flag: from timer?
if(PORTBbits.RB5 == 0) {
TMR1H = (timerServo & 0xFF00) >> 8; // keep most significant byte
TMR1L = timerServo & 0x00FF; // keep least significant byte
PORTBbits.RB5 = 1; // high pulse
} else {
TMR1H = 0x8A; // timer 1 interrupt after 83.333ns*8*(65536-35536) = +/- 20ms
TMR1L = 0xD0; // 35536 = 0x8AD0
PORTBbits.RB5 = 0; // low pulse
}
PIR1bits.TMR1IF = FALSE; // reenable TMR1 interrupt
}
}
#pragma interruptlow YourLowPriorityISRCode
void YourLowPriorityISRCode() {

}


Cтраница, где я нашёл код: http://www.dwengo.or...s/light-tracker .Понимаю, что это совсем другой МК, но, мне интересно, как в данном случае работает код.


Про функцию обработки вроде всё понятно - идёт проверка флагов (откуда пришёл интеррапт), работа с регистрами таймеров и ШИМ портом.А вот как работает вот эта часть кода, когда приходит интеррапт:


#pragma code high_vector=0x08
void high_vector() {
_asm
goto YourHighPriorityISRCode
_endasm
}
#pragma code


-не совсем понятно.Туплю :( ...помогите, плиз!

Сообщение изменено: MB ee (03 Сентябрь 2010 - 11:58 )

  • 0

#81 Sergio

Sergio
  • Постоялец
  • 2 987 сообщений

Отправлено 03 Сентябрь 2010 - 12:14

Драйвер будет.Кстати, а есть ли возможность вместо драйвера использовать какой-нибудь дигитальный элемент, который бы съедал 3 вольта как логическую единицу, а на выходе выдавал эту самую единицу уже в правильном 5вольтовом формате?

Этот дигитальный элемент именуется триггером Шмидта. Можно поставить как отдельный элемент, но, он зачастую есть на входах многих микросхем, в том числе 74 серия, многие микроконтроллеры и т.п. Если не уверен, смотри даташит.
  • 0

#82 Вырвиглаз

Вырвиглаз

    Убийца травы

  • Постоялец
  • 15 501 сообщений
  • Откуда:Эстония, Таллин

Отправлено 03 Сентябрь 2010 - 12:49

Периодичность шима особой роли не играет. Управляем все равно скважностью.
На счет уровней. АРМ по-сути тебе не подходит. Он для сложных вычислительных операций. Тебе сюда нужен простейший пик или атмел. Когда у тебя есть пошаговая отладка в железе, можно брать хоть х86. Но в твоем случае надо начинать с простого. Иначе как отлаживать будешь? Ладно, я тоже тут робота делаю. На шаговых двигателях от принтера. Драйвер L9935. Управление по SPI. Очень рекомендую.

Кстати, на высших ядрах, типа АРМ и ПИК24 и выше, в подпрограмме прерывания уже нет необходимости проверять флаги, которые это прерывание вызвали. Там подпрограм прерываний столько же, сколько векторов. Каждому вектору - свою подпрограмму. Когда у вас 2-3 прерывания, разницы нет. А если у вас их три десятка, тратить 60 циклов на проверку, откуда пришел вектор - непозволительная роскошь (это на асме 60, на С будет три сотни) ))))))
  • 0
Кто живет и грешит в Эстонии, тот опять родится в Эстонии.

#83 MB ee

MB ee
  • Пользователь
  • 55 сообщений
  • Откуда:Nõmme/Musta

Отправлено 03 Сентябрь 2010 - 22:11

Этот дигитальный элемент именуется триггером Шмидта. Можно поставить как отдельный элемент, но, он зачастую есть на входах многих микросхем, в том числе 74 серия, многие микроконтроллеры и т.п. Если не уверен, смотри даташит.

Cпасибо, буду искать!

Периодичность шима особой роли не играет. Управляем все равно скважностью.
На счет уровней. АРМ по-сути тебе не подходит. Он для сложных вычислительных операций.
Тебе сюда нужен простейший пик или атмел. Когда у тебя есть пошаговая отладка в железе,
можно брать хоть х86. Но в твоем случае надо начинать с простого. Иначе как отлаживать
будешь? Ладно, я тоже тут робота делаю. На шаговых двигателях от принтера. Драйвер
L9935. Управление по SPI. Очень рекомендую.


Пока что рассуждаю в пользу устройства с триггером Шмидта, как подсказал Sergio, скорее всего, это будет буфер.Почитал мануалы к предложенному тобой драйверу, штука крутая без базара, управление очень по-разному можно организовать, но для серво, может, будет достаточно и чего-то более простого, а вот степ-мотор я впоследствие тоже буду добавлять, тогда скорее всего использую именно этот девайс.
Кстати, а может тоже принтер расхреначить)))
А насчёт выбора ARM, да, полностью признаю свой фейл! Но ведь дело всё в том, что этот МК мне дал универ (пишу квик старт мануал для контроллера в рамках бакланской дипломки).В мануале обязательно должно быть проделано практическое задание как пример, но мне не охота ограничиваться моргающими диодиками, хочется сварганить что-то, что было бы чуть сложнее, интереснее и, при этом, в состоянии "ON" доставляло окружающим фан :D .Cейчас я начал понимать разницу между архитектурами и понимать, что взял не тот контроллер, а когда брал задание....эх...чем я думал?! Но ладно, может и из этого что-то получиться, в принципе, пойнт в том, чтобы входы-выходы задействовать, значит, можно сделать робота с сенсорами и моторами, просто придумать алгоритм по-сложнее.А насчёт длины периода - благодарю за хорошую новость! В принципе, необходимость насиловать таймеры, по крайней мере, на этом этапе работы, отпадает.Но прерывания всё равно ещё пригодятся, я уверен.

Кстати, на высших ядрах, типа АРМ и ПИК24 и выше, в подпрограмме прерывания уже нет
необходимости проверять флаги, которые это прерывание вызвали. Там подпрограм
прерываний столько же, сколько векторов. Каждому вектору - свою подпрограмму.

То есть, грубо говоря, если вернуться к примеру таймера, нужно в мануале искать что-то типа
HSTIM_IRQ (хстим- тот самый таймер) ?.А потом в коде описать подпрограмму как
void HSTIM_IRQHandler (void)
Так?

Сообщение изменено: MB ee (03 Сентябрь 2010 - 22:37 )

  • 0

#84 Вырвиглаз

Вырвиглаз

    Убийца травы

  • Постоялец
  • 15 501 сообщений
  • Откуда:Эстония, Таллин

Отправлено 03 Сентябрь 2010 - 22:32

MB ee, понимаешь, у каждого плохого программиста свой почерк написания программ. Я считаю себя плохим программистом, потому что дорогу себе сам протаптываю, а не учусь на чужих ошибках. Это что-то вроде вступления. А теперь по делу - я стараюсь не использовать встроенных библиотек. Всякий раз сталкиваюсь с тем, что чем-то они меня не устраивают. Да и многозадачности на них не добьешься. Всякий раз надо гадать, сколько программных циклов займет та или иная задача. Чтобы знать это точно, надо писать на асме. Я выбрал золотую середину - работаю напрямую с регистрами. Только математику перекладываю на компилятор. Но это отдельная история. Допустим, чтобы запустить шим, можно воспользоваться встроенной библиотекой, написав, допустим, PWM_ON(2400). Библиотека подсчитает, с каким postscaller'ом надо запустить Timer1, какой выбрать период, чтобы получить шим, частотой 2400 Гц. Это простой способ. Дальше просто меняем длительность командой, допустим, PWM_DUTY(127) - скважность 0,5. А можно обратится к регистрам ССР1, отправить в них нужные значения из даташита, сконфигурировать шим, таймер1, запустить и радоваться. Путь по-сложнее, но зато точно знаешь, одно обращение к регистру - два такта (занесение в рабочий регистр, из рабочего регистра в нужный нам регистр). Ты уже знаешь, сколько пошло времени. Но это я все к тому веду, что если ты взял АРМ, то и задачи надо ставить АРМовские. На АРМе можно хранить во внешней памяти пять страниц цветного дисплея 320х240 и при этом еще распознавать голосовые команды. А тут тебе никакие библиотеки не помогут. Надо уметь решать несколько задач одновременно.
Если хочешь запустить периферию, открывай даташит и конфигурируй ее ручками.

Сообщение изменено: Вырвиглаз (03 Сентябрь 2010 - 22:35 )

  • 0
Кто живет и грешит в Эстонии, тот опять родится в Эстонии.

#85 MB ee

MB ee
  • Пользователь
  • 55 сообщений
  • Откуда:Nõmme/Musta

Отправлено 03 Сентябрь 2010 - 23:01

Должен согласиться, возможность рассчитать время выполнения - это действительно сильный аргумент.Надо сказать, что у lpc3180 в принципе нет никаких табличных функций, там в хедер файле просто список псевдонимов регистров, так что никаких мудрёных функций, быстродействие которых не возможно рассчитать - по-любому нет.Другой вопрос, что естественно
PWM1_DUTY = 240;
вмещает в себя больше тактов, чем прямое обращение к адресу регистра на аэсеме.Так что, cкорее всего, основной цикл выполню на си, а прерывания буду обрабатывать на ассемблере (чему тоже ещё нужно научиться).Ещё раз спасибо за советы! Возможно, вскоре уже обращусь с конкретными вопросами по ассемблеру, но, для начала, попробую накачать книжек, мануалов, примеров, и разобраться сам.

Сообщение изменено: MB ee (03 Сентябрь 2010 - 23:04 )

  • 0

#86 Вырвиглаз

Вырвиглаз

    Убийца травы

  • Постоялец
  • 15 501 сообщений
  • Откуда:Эстония, Таллин

Отправлено 04 Сентябрь 2010 - 09:47

Я тебе больше с железной частью смогу помочь. Ассемблер я сам не использую, хоть и знаю его не много, но только микрочиповский.
У меня вчера биполярный шаговый двигатель заработал. Теперь могу точно позиционировать вал, управляя скоростью, ускорением и количеством шагов.
  • 0
Кто живет и грешит в Эстонии, тот опять родится в Эстонии.

#87 Вырвиглаз

Вырвиглаз

    Убийца травы

  • Постоялец
  • 15 501 сообщений
  • Откуда:Эстония, Таллин

Отправлено 04 Сентябрь 2010 - 13:16

В Элфе по 50 крон лежат интересные RF модули на 2,4ГГц nRF2401A. Кто-нибудь уже их использовал? Я заказал парочку. Робот должен управляться дистанционно.
  • 0
Кто живет и грешит в Эстонии, тот опять родится в Эстонии.

#88 MB ee

MB ee
  • Пользователь
  • 55 сообщений
  • Откуда:Nõmme/Musta

Отправлено 11 Сентябрь 2010 - 11:45

Вырвиглаз, будут первые испытания - обязательно видео в студию! Дико интересно.Кстати, какой алгоритм у робота будет?Ну, то есть, грубо выражаясь, что он будет делать?
  • 0

#89 Вырвиглаз

Вырвиглаз

    Убийца травы

  • Постоялец
  • 15 501 сообщений
  • Откуда:Эстония, Таллин

Отправлено 11 Сентябрь 2010 - 12:07

MB ee, я не стал полагаться на искусственный интеллект. Заказал в Элфе радиомодули n2401. Схема управления будет на PIC18F13K50. Схема робота на PIC18F1230, у которого 6 ШИМ каналов. Для работы электродвигателей уже имеются все необходимые драйвера. Робот будет сделан из радиоуправляемой модели лексуса IS200. Пока только решаю вопрос, как быть с рулевым управлением. Уже есть запрограммированный модуль управления шаговым двигателем и три шаговых двигателя к нему. Но есть и штатный моторчик управления, которым можно будет работать через ШИМ и специализированный драйвер. Пока пойду простым путем - механику менять не буду. В качестве датчиков робота будут два фотодиода для определения местонахождения по солнцу и, вероятно, еще что-нибудь. Препятствия будут определяться методом тыка - уперся, возрос ток в моторе, препятствие зафиксировано, маневр объезда... Ну пока меня больше волнует все это запустить. А уж обучить его манере вождения - дело десятое.
Для питания робота куплена литий-полимерная батарея на 4200мАч, 11.8 в и током 120А (30С). Это в 8 раз больше, чем штатная батарея машинки.
Управление будет полностью аналоговое. Для этого будет переделан компьютерный джойстик. Так же планируется установка обратной видео связи. В машинку впихну камеру и радио-модуль, который будет выводить изображение на телевизор. Так будет спортивнее. Объектив на камере будет широкоугольный.
  • 0
Кто живет и грешит в Эстонии, тот опять родится в Эстонии.

#90 MB ee

MB ee
  • Пользователь
  • 55 сообщений
  • Откуда:Nõmme/Musta

Отправлено 11 Сентябрь 2010 - 17:35

MB ee, я не стал полагаться на искусственный интеллект. Заказал в Элфе радиомодули n2401. Схема управления будет на PIC18F13K50. Схема робота на PIC18F1230, у которого 6 ШИМ каналов. Для работы электродвигателей уже имеются все необходимые драйвера. Робот будет сделан из радиоуправляемой модели лексуса IS200. Пока только решаю вопрос, как быть с рулевым управлением. Уже есть запрограммированный модуль управления шаговым двигателем и три шаговых двигателя к нему. Но есть и штатный моторчик управления, которым можно будет работать через ШИМ и специализированный драйвер. Пока пойду простым путем - механику менять не буду. В качестве датчиков робота будут два фотодиода для определения местонахождения по солнцу и, вероятно, еще что-нибудь. Препятствия будут определяться методом тыка - уперся, возрос ток в моторе, препятствие зафиксировано, маневр объезда... Ну пока меня больше волнует все это запустить. А уж обучить его манере вождения - дело десятое.
Для питания робота куплена литий-полимерная батарея на 4200мАч, 11.8 в и током 120А (30С). Это в 8 раз больше, чем штатная батарея машинки.
Управление будет полностью аналоговое. Для этого будет переделан компьютерный джойстик. Так же планируется установка обратной видео связи. В машинку впихну камеру и радио-модуль, который будет выводить изображение на телевизор. Так будет спортивнее. Объектив на камере будет широкоугольный.


Хех, круть! Планы более, чем похвальные, всё очень даже круто, особенно, управление на основе изображения с камеры...я когда-то занимался авиамоделизмом, приходилось со стороны управлять модельками, боже, как это сложно и несподручно! А вот с камерой- совсем другой коленкор.Для машинки это конечно не так критично, но то, что "от первого лица" гораздо интереснее- факт.В принципе, если робот управляется по радио и не имеет ИИ как такового, то ничего лучше полностью аналогового управления нет - быстрее и точнее.Кстати, а какой собственный (штатный) ходовой движок машинки? Бензин или 2 электромотора?Рулевое управление я бы наверно на штатном моторчике оставил, для руля вроде как не нужно таких наворотов, как контроль скорости и ускорения, ну это ИМХО.

Сообщение изменено: MB ee (11 Сентябрь 2010 - 17:36 )

  • 0