[image]

Кобра III

 
1 25 26 27 28 29 78
UA Non-conformist #22.11.2011 14:55  @alex_zeed#22.11.2011 14:46
+
-
edit
 

Non-conformist

аксакал

Т.е. я правильно понял, что гироскоп общается с Мегой по I2C, а Мега с компом - уже по УАРТ через мост УАРТ-УСБ? Это нормальная ситуация, стандартная?
   8.08.0
UA Serge77 #22.11.2011 15:30  @Non-conformist#22.11.2011 14:55
+
-
edit
 

Serge77

модератор

Non-conformist> Т.е. я правильно понял, что гироскоп общается с Мегой по I2C, а Мега с компом - уже по УАРТ через мост УАРТ-УСБ? Это нормальная ситуация, стандартная?

Да. А если есть КОМ-порт в компьютере, то и без моста.
   3.0.193.0.19
KZ Xan #22.11.2011 15:38  @Non-conformist#22.11.2011 14:23
+
-
edit
 

Xan

координатор

Non-conformist> Я так понял, что у гироскопа один способ общения с миром - через I2C.

НЕЕЕТ!!!! :)

Их там два на выбор.
I2C/SPI - хочешь I2C, хочешь SPI = Самый_Примитивный_И_простой. :)
(Последовательный Периферийный Интерфейс)

I2C = I2C = IIC = интерфейс, предназначенный для общения нескольких микросхем, расположенных на одной плате. Им назначаются адреса на шине, есть спец протокол обмена данными, кто-то из них назначается начальником...
Тебе это нафиг не нужно. :)

Non-conformist> сразу сделать бортовую плату мозгов на Меге32 + гироскоп? Чтобы этой платой и с ПК общаться по УСБ (через мост УСБ - УАРТ), и моторами рулить?

Да.
Нарисовать полную плату, но вначале можно запаять только МК и интерфейс к ПК, с ними поиграть.
И если что не так, новую плату сделаешь.
Когда с этим разберёшься - допаять гироскоп и прочее.
   7.07.0
UA Non-conformist #22.11.2011 16:48  @Xan#22.11.2011 15:38
+
-
edit
 

Non-conformist

аксакал

Ага... Значит, ещё раз: гироскоп общается с Мегой по SPI, а Мега с компом - по COM (COM есть и на рабочем компе, и на обоих домашних). Т.е. нет смысла делать мост УСБ-УАРТ для данного проекта. А вообще, конечно, есть смысл, но сейчас не об этом речь.

***
Обозначим количество тел на плате ЦП (подо что сделана разводка):

1. АТМега32
2. L3G4200D
3. несколько светодиодов для отладки и для общения с устройством в поле
4. 6-пиновая гребёнка ISP
5. гребёнка UART (+ шнурок UART-COM)
6. гребёнка ШИМ (+ сигнальный кабель на плату драйверов электромоторов)
7. гребёнка выносного пульта управления для регулирования ПИД-коэффициентов в режиме реального времени (+ метровый кабель и пульт с тремя потенциометрами/енкодерами, трёхразрядным семисегментным индикатором и кнопкой "ВВОД")
8. гребёнка для цепи вопламенителя ССР
9. гребёнка контакта подъёма (старт таймера)
10. МОСФЕТ для ССР

Ничего вроде бы не забыл? Выносной пульт может и лишний...
   8.08.0
UA Serge77 #22.11.2011 17:06  @Non-conformist#22.11.2011 16:48
+
-
edit
 

Serge77

модератор

гребёнка на программатор?
   3.0.193.0.19
UA Non-conformist #22.11.2011 17:37  @Serge77#22.11.2011 17:06
+
-
edit
 

Non-conformist

аксакал

Так я же написал - шестипиновая ISP. Я же аббревиатурами сыплю, как настоящий... SPI от ISP уже отличаю, по крайней мере по назначению. ))
   8.08.0
UA Serge77 #22.11.2011 17:45  @Non-conformist#22.11.2011 17:37
+
-
edit
 

Serge77

модератор

Non-conformist> SPI от ISP уже отличаю

а я спутал)))
   3.0.193.0.19
KZ Xan #22.11.2011 17:46  @Non-conformist#22.11.2011 16:48
+
-
edit
 

Xan

координатор

Non-conformist> Ага... Значит, ещё раз: гироскоп общается с Мегой по SPI, а Мега с компом - по COM

Да.

Non-conformist> 7. гребёнка выносного пульта управления для регулирования ПИД-коэффициентов в режиме реального времени (+ метровый кабель и пульт с тремя потенциометрами/енкодерами, трёхразрядным семисегментным индикатором и кнопкой "ВВОД")

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

А для компа (в который раз, хи-хи) рекламирую свою прогу (160 кил):
http://dl.dropbox.com/u/6706516/Comport.rar
Позволяет принимать данные с железки и посылать ей команды.
Для себя делал, не для клиентов!!! :D
   7.07.0
UA Non-conformist #22.11.2011 19:07  @Xan#22.11.2011 17:46
+
-
edit
 

Non-conformist

аксакал

Выносной пульт планировался мной для "водяной Кобры", чтобы не тащить комп на огород. Дешёвых ноутов я у нас в продаже не встречал...

Но сейчас планы немного изменились, поскольку один человек объяснил мне, что все коэффициенты можно рассчитать, построив математическую модель сабжа на компе. Для этого нужны экспериментальные данные, получить которые можно на земле, ничем при этом не рискуя. В массогабаритном макете ракеты нужно стационарно закрепить максимально перекошенный РДТТ, макет закрепить в карданном кольце, в центре тяжести, и запустить мотор. На видео покадрово посмотреть угловые скорость и ускорение макета в кардане. На основе этих данных и могут быть рассчитаны ПИД-коэффициенты, причём с достаточно высокой степенью достоверности. Само собой, нужна ещё тяга РДТТ, но получить её значение не составляет проблемы.

Сложность вызывает то обстоятельство, что стабилизация перевёрнутого маятника и УВТ-стабилизация ракеты на старте существенно отличаются друг от друга. Прежде всего тем, что маятник балансируется непосредственным механическим воздействием на его нижний конец, а ракета - опосредованно, путём отклонения вектора тяги относительно ЦТ. Здесь во-первых нужно учитывать величину тяги РДТТ и угол отклонения её вектора относительно ЦТ. Чем больше это отклонение, тем большим будет компенсирующий момент (при неизменной тяге).

Кроме того, если в перевёрнутом ПИД-маятнике угловые скорость и ускорение стержня пропорциональны скорости и ускорению перемещения его тележки, то в случае ракеты угловые скорость и ускорение её относительно вертикали должны быть пропорциональны отнюдь не угловым скорости и ускорению РДТТ относительно оси корпуса! Угловые скорость и ускорение ракеты должны быть преобразованы в ДОПОЛНИТЕЛЬНЫЕ углы отклонения РДТТ относительно корпуса (плюсуемые к текущему пропорциональному углу)! Я надеюсь в скором времени подготовить анимацию, чтобы наглядно показать, как именно должен работать ПИД в ракетном приложении...

Пошёл домой.
   8.08.0
UA Non-conformist #22.11.2011 23:46  @Non-conformist#22.11.2011 19:07
+
-
edit
 

Non-conformist

аксакал

> На видео покадрово посмотреть угловые скорость и ускорение макета в кардане.

Или лучше не на видео, а поместить в макет плату ЦП с гироскопом, и записать эволюции (точнее вращение) трубы либо на ноут, либо в память... Нет, таки в память - труба-то вращаться будет что твоё "китайское колесо". Ноут не пройдёт.

Такие данные, я думаю, будут гораздо представительнее, чем расшифровки видео: тут сразу вам и погрешность гироскопа, и его шумы - "всё как в бою"...
   8.08.0
UA Non-conformist #24.11.2011 00:12  @Non-conformist#22.11.2011 23:46
+
-
edit
 

Non-conformist

аксакал

Xan

О, так у тебя оказывается GUI программа! Я почему-то ожидал от тебя чего-то куда более сурового - вроде досовского чёрного окошка! )) И она сразу файл делает из полученных данных... Три раза открыл - три пустых файла получил, прикольно... Завтра гироскопы заберу - руки уже совсем чешутся попробовать. А в Экселе сформированные твоей прогой файлы можно будет посмотреть?

Тут одна неувязочка обнаружилась - СОМ c UART'ом оказывается согласовывать надо, я совсем об этом забыл; думал вся проблема в том, чтобы найти готовый шнур с DB-9. Завтра надеюсь отыскать в своих закромах микруху 232-преобразователя; если нет, то придётся покупать. На транзисторах делать чего-то не хочу... Да, и какой кварц нужен для Меги32 - для её работы с L3G4200D? У меня есть на 12.0000 МГц - не пойдут такие? И конденсаторы по 18 пФ к ним. Может, что-то ещё надо - подскажи, чтобы потом снова деньги за пересылку не платить?

Да, в своём перечне элементов (парой постов выше) я совсем забыл про гребёнку для резистивных датчиков положения кардана! И в этой связи вопрос - как это дело с АЦП МК связать? Никаких дополнительных навесных компонентов не потребуется? В схемах с привлечением бортового АЦП МК я, помню, видел дроссель по питанию - смотрю в ДШ Меги, и не могу найти той схемы типового включения АЦП, там ещё были рекомендации по разводке платы в районе входов АЦП... Буду благодарен за прямую ссылку и советы из практики!
   8.08.0
UA Serge77 #24.11.2011 00:23  @Non-conformist#24.11.2011 00:12
+
-
edit
 

Serge77

модератор

Non-conformist> Да, в своём перечне элементов (парой постов выше) я совсем забыл про гребёнку для резистивных датчиков положения кардана! И в этой связи вопрос - как это дело с АЦП МК связать?

Просто с бегунка резистора - на вход АЦП. Наверно можно повесить конденсатор, но при таком большом размахе сигнала шум не будет заметен.

По опыту высотомера - никакие спецмеры по разводке АЦП не требуются, я специально старался "сбить" АЦП неправильными режимами, не получилось.

Чтобы не забыть, чего надо, - нарисуй полную схему, выкладывай, народ насоветует )))
   8.08.0
UA Non-conformist #24.11.2011 00:24  @Non-conformist#24.11.2011 00:12
+
-
edit
 

Non-conformist

аксакал

Да, ещё вопрос - если писать параметры вращения корпуса аппарата, закреплённого в кардане и приводимого в движение РДТТ, то очевидно потребуется какая-то БОРТОВАЯ ПАМЯТЬ. Что вы можете посоветовать из самого дешёвого и вместе с тем самого рационального по времени реализации? По мне так была бы идеальна некая микруха рядом с корпусом МК, читать которую можно было бы компом через тот же УАРТ... ??? В лётном образце такая память тоже, я думаю, совсем не помешает...
   8.08.0
UA Non-conformist #24.11.2011 00:26  @Non-conformist#24.11.2011 00:24
+
-
edit
 

Non-conformist

аксакал

ОК, завтра постараюсь выложить схему, и займусь разводкой. Посоветуйте бортовую память!
   8.08.0
RU spacecraft #24.11.2011 00:32  @Non-conformist#24.11.2011 00:26
+
-
edit
 

spacecraft

новичок
Non-conformist> ОК, завтра постараюсь выложить схему, и займусь разводкой. Посоветуйте бортовую память!

Я тоже обдумывал этот вопрос. На будущее, если буду запускать с GPS чипом. Решил что самое простое - это обычная флэшка. Есть куча контроллеров с реализацией USB-хоста. Поставляются готовые библиотеки для поддержки USB flash drive. Программно выглядит как fopen("data.txt") и вперед. Да и на комп потом переносить гораздо удобнее.
   7.07.0
UA Non-conformist #24.11.2011 00:40  @spacecraft#24.11.2011 00:32
+
-
edit
 

Non-conformist

аксакал

Привлекательно, но у меня больше душа лежит к максимальному облегчению по деньгам, пусть и в некоторый ущерб удобству... Я бы совершенно не возражал против небольшой и недорогой микрухи рядышком с МК, пишущей по обеим осям секунд десять данных с приемлемым шагом... Ну, раз двадцать-тридцать в секунду... Лишняя пайка для меня проблемы не составляет; корпуса любые, включая БГА.
   8.08.0
UA Serge77 #24.11.2011 00:41  @Non-conformist#24.11.2011 00:24
+
-
edit
 

Serge77

модератор

Может спецы подскажут что-то другое, но я думаю, абсолютно достаточно того, что у меня в высотомере:


Дёшево и влазит больше 4 минут записи по 61 точки в секунду.

Только тогда наверно придётся отказаться от SPI для гироскопа, а общаться с памятью и гироскопом по I2C, но это не проблема. Пусть спецы прокомментируют.
   8.08.0
KZ Xan #24.11.2011 01:11  @Non-conformist#24.11.2011 00:12
+
-
edit
 

Xan

координатор

Non-conformist> А в Экселе сформированные твоей прогой файлы можно будет посмотреть?

Из экселя говоришь "открыть", "с расширением txt", тыкаешь на файл, ну и несколько раз надо согласиться. Эксель каждое число в клеточку положит.

Non-conformist> Да, и какой кварц нужен для Меги32 - для её работы с L3G4200D?

Да всё равно. Гироскопу пофиг.
ЮАРТу надо "красивый" кварц. Я для пиков использую 14.7456 — из него скорость 115200 получается. Кондюры пойдут ± лапоть.
Микрухе преобразователя RS232 штук пять кондюров в диапазоне 0.1 ... 2.2 мкФ.

Non-conformist> гребёнку для резистивных датчиков положения кардана! И в этой связи вопрос - как это дело с АЦП МК связать? Никаких дополнительных навесных компонентов не потребуется? В схемах с привлечением бортового АЦП МК я, помню, видел дроссель по питанию

Вроде, всё примитивно.
Дросселей никогда не ставил, как-то он и так работает! :)

Non-conformist> рекомендации по разводке платы

Это необъяснимое искусство!!! :D
Существует много всяких доков про разводку.
Я стараюсь всё "залить землёй", чтоб вокруг всех цепей была земля — замкнутая. Некоторые считают, что замкнутая — это неправильно. Но у меня работает! :)
Силовое всё отдельно, в отдельной части платы, и земли между этими частями должны соединяться в одном месте неширокой линией.
Ну и я электролиты не ставлю уже давно, а ставлю много керамики порядка микрофарады. Грубо — на каждую микруху не меньше штуки.
   7.07.0
UA Ckona #24.11.2011 01:27  @Non-conformist#22.11.2011 19:07
+
-
edit
 

Ckona

опытный
★☆
Non-conformist> ...построив математическую модель...
А нет ли приблизительных данных по массе и габаритам ракеты, а также оценки тяги двигателя ?
Хочется попробовать оценить поведение системы.
   
RU spacecraft #24.11.2011 01:40  @Non-conformist#24.11.2011 00:40
+
-
edit
 

spacecraft

новичок
Non-conformist> Привлекательно, но у меня больше душа лежит к максимальному облегчению по деньгам, пусть и в некоторый ущерб удобству...

Так флэшка и есть наиболее дешевая память, если конечно пересчитать стоимость на мегабайт. К тому же у всех она уже есть. Недостаток памяти EEPROM - ее небольшой объем и малая скорость записи. Конечно придется покупать новый МК, но если взять что-то типа STM32F107RC, то это будет целый бортовой компьютер в одном корпусе. С АЦП, ЦАП и тактовой частотой 72МГц. Но повторюсь сам я не пробовал, это только в планах на будущее.
   7.07.0
IS GOGI #24.11.2011 06:06  @Non-conformist#24.11.2011 00:40
+
-
edit
 
AT24C1024B EEPROM лучше тем, что из-за большого ресурса записи можно побайтовую запись делать. Корпуса очень маленькие. Цена у нас около 200 рублей.
   
UA Non-conformist #24.11.2011 11:55  @GOGI#24.11.2011 06:06
+
-
edit
 

Non-conformist

аксакал

GOGI> AT24C1024B

Есть такое, полное имя AT24C1024BN-SH25-B(2GB 2) - $2 за корпус SO-8. Почитал ДШ - можно наращивать до четырёх штук последовательно. Можно заказывать? Хватит скорости, хватит памяти? Резервировать ли место на плате под второй корпус, или в нашем случае это излишне?


Xan> Я для пиков использую 14.7456

Есть и такое, но у меня не ПИК - пойдёт ли он для АТМеги32 ? И повторю вопрос Сергея насчёт УАРТа: если МК будет общаться с двумя устройствами - гироскопом и памятью, будет ли задействован УАРТ, или нужно будет пользоваться I2C ? Если будем пользоваться I2C, то какой кварц нужен для этого варианта?

Ckona
Чуть позже, давайте сначала запустим гироскоп и посмотрим его кривули Экселем! Это основная задача сейчас - прошу сосредоточиться на ней! ))
   8.08.0
KZ Xan #24.11.2011 12:13  @Non-conformist#24.11.2011 11:55
+
-
edit
 

Xan

координатор

Xan>> Я для пиков использую 14.7456
Non-conformist> Есть и такое, но у меня не ПИК - пойдёт ли он для АТМеги32 ?

Атмеля не знаю.
14.7456 / 0.1152 = 128 — красивое число. В МК же скрость юарта из кварца делается. Думаю, атмелю оно тоже понравится.
Если кварц слишком быстрый, можно взять 7.3728.

Non-conformist> будет ли задействован УАРТ, или нужно будет пользоваться I2C ?

Не знаю.
   7.07.0
UA Non-conformist #24.11.2011 12:48  @Xan#24.11.2011 12:13
+
-
edit
 

Non-conformist

аксакал

Xan> Если кварц слишком быстрый, можно взять 7.3728.
Записал в заказ. Там их куча одинаковых по частоте, но разных по цене и/или корпусу. Беру ценовую серединку, в большом жестяном SMD (готовый изолятор, прокладки не нужно изобретать).

Xan> Не знаю.
Ты лучше пиши "ПОКА не знаю". Так мне как-то бодрее будет. )) На сколько секунд записи хватит памяти, той, что предложил ГОГИ, если с разумным временным шагом писать данные? Нужно ли резервировать на плате место под второй корпус?

Всё, рисую схему...
   8.08.0

alex_zeed

втянувшийся

Частота кварца важна только для UART. UART используется только для связи с компом. Скорость UART = частота кварца / (16*N) (это для AVR). Единственная проблема "неправильных" кварцев - не удается подобрать такое N, чтобы погрешность скорости была небольшой (желательно не более 1%, хотя при отсутствии помех уарт может "переварить" и 3-4%. В даташите любого AVR в разделе USART или UART есть большущая таблица, где дла десятка-другого самых ходовых кварцев уже посчитаны погрешности на типичных скоростях.

I2C и SPI - синхронные каналы, там есть отдельный тактовый сигнал (clock), по фронту или спаду которого производится выдача или прием очередного бита, поэтому ему абсолютно пофиг на частоту в пределах 10-20%, лишь бы не была вдвое выше номинала :)

В общем, если есть 14.7456 - ставь его, если нету - ставь 12 или 16, в общем что есть. А, единственное "но" - я за темой плотно не слежу, питание атмеги 5 или 3.3? Если 3.3, то кварц надо не больше 8 МГц.

Насчет памяти - +1 к AT24C1024B или аналогичной spi флешке. Сильно хочется гигабайты - тогда SD карточку в режиме SPI, примеры есть в инете. USB host для начинающего очень не рекомендую, даже на спецчипе = лишний месяц отладки.

На SPI можно вешать много устройств, скажем если сильно надо - можно повесить и гиру, и память - сигналы MOSI, MISO и SCK все впараллель, сигналы CS от гиры и от памяти - на разные ноги атмеги и никогда не выдавать на них сразу два 0, только по очереди.
   8.08.0
1 25 26 27 28 29 78

в начало страницы | новое
 
Поиск
Настройки
Твиттер сайта
Статистика
Рейтинг@Mail.ru