Краткий Курс - программирование AVR - часть VII

 
1 6 7 8 9 10 11 12
+
-
edit
 

Serge77

модератор

А.С.> При интегрировании ошибка накапливается со временем.

Я в курсе.

А.С.> нужно как можно тщательнее избавиться от погрешности до интегрирования.

Ну так эту погрешность нужно учесть при подготовке тех самых "данных заранее".
Но здесь наверное слишком сложная функция для погрешности, не получится.
RU Андрей Суворов #29.11.2005 16:52
+
-
edit
 

Андрей Суворов

координатор

А.С.>>При интегрировании ошибка накапливается со временем.
А.С.>>нужно как можно тщательнее избавиться от погрешности до интегрирования.
Serge77>Ну так эту погрешность нужно учесть при подготовке тех самых "данных заранее".
Serge77>Но здесь наверное слишком сложная функция для погрешности, не получится.

Я понял, что ты предлагаешь строить закон управления от угловой скорости, что крайне затруднительно, но можно. Но это не помогает в борьбе с погрешностью нуля от температуры, к сожалению. Т.е. изменение температуры датчика вызывает мнимое вращение, которое система постарается скомпенсировать и в итоге развернёт ракету. А уж если учитывать температурную погрешность нуля, можно и температурную погрешность коэффициента учесть.

На нелинейность, может быть, и просто забить, поскольку угловые скорости малы на активном участке...
 
Это сообщение редактировалось 29.11.2005 в 22:01
+
-
edit
 

Serge77

модератор

Андрей, не делай таких цитат! Отредактируй свои сообщения.

pokos

аксакал

А.С.> Или как?
Ну, в двумерной таблице можно попробовать взять диагональ с некоторой потерей точности.
А.С.> Кстати, в атмегах старших умножитель аппаратный, 16-битное умножение - это четыре умножения плюс три сложения, плюс два сдвига на четыре. Что-то в районе 25 тактов.
В реальности получается больше с учётом работы со знаком и пересылок в/из ОЗУ. Обычно не все переменные помещаются в регистры.
Кстати, согласен с Серёгой, интегрировать нужно только сырые данные, иначе интегрируются и ошибки аппроксимации. При статистической обработке интеграция ошибок, наоборот, бывает хорошо, а вот если нужно использовать мгновенные значения - плохо всегда.

 
Это сообщение редактировалось 29.11.2005 в 17:11
RU Андрей Суворов #29.11.2005 17:22
+
-
edit
 

Андрей Суворов

координатор

pokos>Кстати, согласен с Серёгой, интегрировать нужно только сырые данные, иначе интегрируются и ошибки аппроксимации. При статистической обработке интеграция ошибок, наоборот, бывает хорошо, а вот если нужно использовать мгновенные значения - плохо всегда.

Люди, ну как я могу интегрировать сырые данные, когда у меня нулю угловой скорости при температуре 250 С соответствует код, условно говоря, 32767, а при 300 С 31810?
 
Это сообщение редактировалось 29.11.2005 в 22:00

pokos

аксакал

А.С.> Люди, ну как я могу интегрировать сырые данные, когда у меня нулю угловой скорости при температуре 250 С соответствует код, условно говоря, 32767, а при 300 С 31810?
Логично. Тогда не проще датчик термостатировать?
 
+
-
edit
 

Serge77

модератор

Андрей, ты обращаешь внимание на просьбы модератора?
RU Андрей Суворов #29.11.2005 17:33
+
-
edit
 

Андрей Суворов

координатор

Serge77>Андрей, ты обращаешь внимание на просьбы модератора?
Сергей, извини, а что нужно сделать, я не понял?
 
Это сообщение редактировалось 29.11.2005 в 17:59

Yuran

опытный

УДАЛИТЕ ЭТО СООБЩЕНИЕ ПОЖАЛУЙСТА B)
 
Это сообщение редактировалось 29.11.2005 в 20:38
UA Serge77 #29.11.2005 17:44  @Андрей Суворов#29.11.2005 17:33
+
-
edit
 
RU Андрей Суворов #29.11.2005 17:57
+
-
edit
 

Андрей Суворов

координатор

А.С.>> Сергей, извини, а что нужно сделать, я не понял?
Serge77> Не нужно делать такие большие цитаты, как здесь:
Но ведь они не по объёму большие! Это движок их украшает рюшечками и линеечками. Ладно, я сменю тип цитирования.
 
+
-
edit
 

Serge77

модератор

Они большие по объёму. Обычно больше, чем твой ответ.
RU Андрей Суворов #29.11.2005 22:19  @pokos#29.11.2005 17:28
+
-
edit
 

Андрей Суворов

координатор

А.С.>> Люди, ну как я могу интегрировать сырые данные, когда у меня нулю угловой скорости при температуре 250 С соответствует код, условно говоря, 32767, а при 300 С 31810?
pokos> Логично. Тогда не проще датчик термостатировать? [»]

Это совет того же разряда, что и совет Сержу вместо возни с шумом вставить усилитель в высотомер. Но у меня есть ещё соображения.

Термостатирование датчика охлаждением в любительских условиях труднореализуемо. Элемент Пелтье и весит немало, а уж жрёт... Значит, датчик нужно подогревать, а не хочется - вблизи 25 градусов влияние температуры на смещение нуля минимально, а в районе 35-40 градусов на каждый градус температуры приходится больше милливольт и градусов в секунду "фантомного" вращения.
Кроме того, термостатировать хорошо датчик со встроенным термометром - как у Аналог Девайсез, а в Мюратовском термометра нет, а внешний будет иметь погрешность и инерцию заметные.
Дальше, в системе с цифровым управлением всё равно будут колебания температуры, которые будут выглядеть, как колебания угловой скорости...
Нет, уж лучше температура будет меняться естественным образом, зато медленно и монотонно :)
 
RU termostat #30.11.2005 01:25
+
-
edit
 

termostat

аксакал

А.С.> Термостатирование датчика охлаждением в любительских условиях труднореализуемо. Элемент Пелтье и весит немало, а уж жрёт...
 


дак делают на резисторах или прим транзистором греют + хорошая теплоизоляция + ПИД.

А.С.> в Мюратовском термометра нет, а внешний будет иметь погрешность и инерцию заметные.
 


Ну какая там инерция при пенопластовой теплоизоляции и маломощных нагревательных элементах. Колебания будут очень медленные ИМХО.




pokos

аксакал

А.С.> Это совет того же разряда, что и совет Сержу вместо возни с шумом вставить усилитель в высотомер.
Ну, это не совет, а вопрос. Хотя, да, разряд тот же, а именно, пожелание сделать как лучше, а не как получится.
А.С.> Термостатирование датчика охлаждением в любительских условиях труднореализуемо. Элемент Пелтье и весит немало, а уж жрёт...
Для этих целей достаточно маленькой батарейки на 20мА весом в четверть грамма.
А.С.> Кроме того, термостатировать хорошо датчик со встроенным термометром - как у Аналог Девайсез, а в Мюратовском термометра нет, а внешний будет иметь погрешность и инерцию заметные.
Не больше, чем термометр для температурной коррекции по таблице.
А.С.> Дальше, в системе с цифровым управлением всё равно будут колебания температуры, которые будут выглядеть, как колебания угловой скорости...
Погрешности будут всегда. Вопрос только в том, когда они будут наименьшими. На цифровом регуляторе могу обещать колебания тем-ры менее 0,1С при внешней температуре 0..+30.
 

delay

новичок
Приветствую знатоков МК!
У меня вопрос по прошивке Tiny.
А именно Tiny13, 15, 2313
В AVReal пишутся. Но AVREal с командной строки мне не понравился, и AVRealshel не очень удобный.
В Code Vision и Uniprof не связываются. (Tiny15 в Uniprof с включееным тормозом опознается, ноя я его не прошивал, т.к. компиляторы Code Vision и ICC его не поддерживают, а за IAR пока не брался. Закончу курс Термостата, возьмусь за IAR.
MEGA и Classic прошивал без проблем в Code Vision и SPMEGA.
Кто-то встречался с этим?
 

NoS

новичок
Здравствуйте, господа. На днях собрал свое первое устройство на мк - часики (спасибо курсу termostat'a). Заработали почти зразу, радости было вагон. Теперь хочу их модернизировать програмно в тахометр, который работает по принципу "лазер - отв. в роторе - фоторезистор", но никак не могу регестрировать экст инт2 (мега8535), подскажите пожалуйста, как это сделать. С програмной частью вопросов, я думаю, не возникнет.
 

termostat

аксакал

NoS> Здравствуйте, господа. На днях собрал свое первое устройство на мк - часики (спасибо курсу termostat'a).
 


я рад!

никак не могу регестрировать экст инт2 (мега8535), подскажите пожалуйста, как это сделать. С програмной частью вопросов, я думаю, не возникнет. [»]
 


легче всего с помощью мастера начального кода компиляторов CodeVisionAVR или ICC по примеру задач 5 и 8 и 3_new

NoS

новичок
Повторюсь, с програмной частью я думаю справлюсь, я в железе не знаю куда вешать резистор. Пытался на лапу INT2 и Vcc, простенькую програмку написал, которая по возникновению прерывания меняет 000000 на 888888 на индик-рах, но сколько не свечу на него, ниче не происходит. Далее решил обратится за помощью, дабы не изламать камень. Там еще почему-то на инт2 только фолинг эдж и ризинг эдж. Инт0 и Инт1 не изпользую, т.к они задействованы для вывода цифр на 7-исег-е индик-ы. А визардом я во всех случаях нач-й код стараюсь генерить.
 

delay

новичок
Если я правильно понял, вопрос стоит, как схемно решить прием луча лазера. Просто фоторезистора может не хватить. Надежнее его установить в базу транзистора, пропустив через него смещение, а коллектор подключить ко входу МК. Эмитер - на корпус. На входе должна быть "1"
 

NoS

новичок
Попробую
 
Это сообщение редактировалось 03.12.2005 в 07:50

NoS

новичок
Еще вопрос, может кто-нибудь знает где есть мануал к Иглу на русском, а то че-то потыкался, и не понял ниче, а хелп какой то неприятный для чтения, во всяком случае я пару обзацов еле осилил.
 
RU termostat #03.12.2005 02:19
+
-
edit
 
+
-
edit
 

Serge77

модератор

NoS> Еще вопрос, может кто-нибудь знает где есть мануал к Иглу на русском

Откуда же он возьмётся на русском?

А что там непонятно? Спрашивай, только что-то конкретное, а не "как работать".

delay

новичок
Для NoS
Помнится делал устройство на 90S2313. Ко входу порта подключал фотодиод на корпус, какой не знаю, каой под руку попался. Смещение с 5 вольт через 100к. Срабатывало от дневного света. Устройство работает надежно. С фоторезистором придется возиться исходя из его номинала.
 
Это сообщение редактировалось 03.12.2005 в 12:27
1 6 7 8 9 10 11 12

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