|
|
  |
Первые шаги с AVR, Есть идея и желание, но нет опыта |
|
|
|
Jul 4 2007, 21:12
|
Частый гость
 
Группа: Свой
Сообщений: 77
Регистрация: 4-08-06
Пользователь №: 19 324

|
Сергей Борщ , спасибо за подробное разъяснение. Девайс должен обрабатывать температуру от датчиков, которые будут находится на расстоянии 50м, да и точность измерений хотелось бы повыше, чем предлагают "TMP-analog devices" и "Maxim". Датчики я подобрал Pt100(как более точные в диапазоне до 120С) с аналоговым линиаризированным выходом 4/20мА(убрать влияние эл.маг.полей). AndryG, спасибо за ваши советы и за предложение о помощи, непременно воспользуюсь. А по поводу STK*, признаюсь честно, решил получше разобраться с МК. А вообсче у меня есть идея подсоединить потом USB-контроллер и на PC..  Что касается софта, остановился пока на WinAVR и AVRStudio...все/таки open source..  А по поводу измерения температуры, может у кого/нибудь будут другие варианты? А то что/то мой вариант у меня вызывает "смутные сомнения". T.e. на каждый сенсор надо будет вешать сопротивление, а с него в свою очередь снимать напряжение. Вот и думаю или через Mux/Sample-hold/АЦП или сразу на АЦП/входы МК (а это МК с 12 АЦП)...
Сообщение отредактировал namelos - Jul 4 2007, 21:15
|
|
|
|
|
Jul 5 2007, 00:16
|

Гуру
     
Группа: Модераторы
Сообщений: 8 455
Регистрация: 15-05-06
Из: Рига, Латвия
Пользователь №: 17 095

|
Цитата(namelos @ Jul 5 2007, 00:12)  Девайс должен обрабатывать температуру от датчиков, которые будут находится на расстоянии 50м, да и точность измерений хотелось бы повыше, чем предлагают "TMP-analog devices" и "Maxim". Если вы будете на 50м тащить провода от Pt100, то вы (в очень высокой долей вероятности) не получите даже такой точности, какую дают Максимы с Аналоговыми Девицами. Так что быстрее думайте о замене "одного пирога с 8 свечками" на "8 пирогов с одной свечкой", т.е. об отдельном контроллере у каждого датчика. При стоимости контроллера меньше доллара вы больше сэкономите на проводах. Примеры подключения датчика можно посмотреть тут. Насчет "аналогового линеаризованного выхода" не понял - Pt100 это ведь обычный платиновый терморезистор.
--------------------
На любой вопрос даю любой ответ"Write code that is guaranteed to work, not code that doesn’t seem to break" ( C++ FAQ)
|
|
|
|
|
Jul 5 2007, 05:40
|
Частый гость
 
Группа: Участник
Сообщений: 163
Регистрация: 22-09-05
Пользователь №: 8 834

|
Цитата(mdmitry @ Jul 3 2007, 21:36)  Посмотрите акцию Atmel на www.efo.ru. Там два варианта за приемлемые деньги. откудо купить AVR DRAGON+STK500? за 50$. Пожалуйста дайте линк.
--------------------
Прошивка это душа микроконтроллера!
|
|
|
|
|
Jul 5 2007, 07:42
|
Профессионал
    
Группа: Свой
Сообщений: 1 235
Регистрация: 14-05-05
Из: Санкт-Петербург
Пользователь №: 5 008

|
DS18B20 дает точность 0,5 градуса безо всякой калибровки, в свое время мы даже получали сертификат на систему с этими датчиками - все датчики уложились в заявленный производителем диапазон, а если откалибровать его, то можно получить и более высокую точность, у него шаг измерения составляет 0,0625 градуса. В условиях бытовых помех он может работать на удалении до 200метров, один знакомый делал, пришлось ему при этом растянуть тайм слоты, хотя я бы еще и подтяжку уменьшил до 1-0,5 кОм, при этом точность не уменьшается, т.к. передача идет в цифровом виде, диапазон измерений до 125 градусов, кратковременно выдерживает и большие температуры.
Упомянутый мной ранее КИТ AVR Butterfly имеет на своем борту ЖКИ индикатор, мега169, джойстик, пищалку, батарейку, датафлешь на 4мбит и т.д., стоит 600р в ЭФО. Для установки реле конечно потребуется дополнительная плата.
--------------------
|
|
|
|
|
Jul 5 2007, 08:53
|
Частый гость
 
Группа: Свой
Сообщений: 77
Регистрация: 4-08-06
Пользователь №: 19 324

|
Цитата(Сергей Борщ @ Jul 5 2007, 04:16)  Насчет "аналогового линеаризованного выхода" не понял - Pt100 это ведь обычный платиновый терморезистор. Pt100(RTD) специального исполненеия вместе с преобразователем, но дороговат, однако. Вот и ищу приемлимое решение. GDI ,спасибо за информацию. Неплохое предложение. Интересно, а поставляются такие датчики в защитных корпусах для измерения темпеартуры жидкости. Датчики собираюсь устанавливать на двигателе, поэтому хотелось бы там разместить только сами датчики без блока обработки для быстрой замены в случае поломки. Сам девайс будет размещен в 50м-70м и кабель должен будет проходить по цеху рядом с кабелями и ел.моторами, в этом как раз и проблема, как доставить сигнал без потерь. И еще, хотелось бы увеличить скорость обработки температуры, DS18B20-сенсор обрабатывает температуру 0.7с, при 12 сенсорах это почти 8 секунд.
Сообщение отредактировал namelos - Jul 5 2007, 08:58
|
|
|
|
|
Jul 5 2007, 10:10
|
Частый гость
 
Группа: Свой
Сообщений: 139
Регистрация: 23-05-05
Из: UA
Пользователь №: 5 317

|
Цитата 0.7с, при 12 сенсорах это почти 8 секунд Если не использовать паразитное питание, а Вы его использовать и не будете, то можно всем датчикам послать запрос на преобразование - подождать "время преобразования" (от начала рассылки) - и прочитать температуру ... и никаких 8 секунд.
|
|
|
|
|
Jul 5 2007, 10:38
|
Профессионал
    
Группа: Свой
Сообщений: 1 235
Регистрация: 14-05-05
Из: Санкт-Петербург
Пользователь №: 5 008

|
Время преобразования зависит от разрядности преобразования на которое настроен датчик: 750мс при 12бит, шаг 0,0625 градусов ~150мс(точно не помню) при 9 бит, шаг 0,5град. Это настраивается записью режима работы в датчик, с завода он поставляется в режиме работы - 12бит Не обязательно ждать когда датчик завершит преобразование, я делал так: Чтение результата -> команда на преобразование, пока датчик считает температуру, можно опрашивать остальные. При опросе можно не читать весь СкратчПад, а принять только первые 2 байта, в которых содержится собственно измеренная температура, затем подать ресет на линию, чтоб прервать передачу от датчика. Мы для датчиков изготавливали металлические корпуса. Для обеспечения замены датчиков, каждый датчик подключался на независимую линию 1-wire, т.е. со стороны контроллера было выделено несколько шин 1-ware на каждой из которых висел один датчик, что позволяло не использовать команды работы с серийными номерами датчиков, как это требуется при подключении нескольких датчиков на одну шину. В качестве бонуса появляется возможность параллельного опроса датчиков. P.S. Кстати, это был мой первый проект сделанный на АВР(до этого разработками не занимался) и сделан он был в CV
--------------------
|
|
|
|
|
Jul 6 2007, 07:18
|
Профессионал
    
Группа: Свой
Сообщений: 1 235
Регистрация: 14-05-05
Из: Санкт-Петербург
Пользователь №: 5 008

|
Igor26 вы про что? про мега16 и 8 каналов? Вот моя цитата, почему так. Цитата каждый датчик подключался на независимую линию 1-wire, т.е. со стороны контроллера было выделено несколько шин 1-ware на каждой из которых висел один датчик, что позволяло не использовать команды работы с серийными номерами датчиков, как это требуется при подключении нескольких датчиков на одну шину. В качестве бонуса появляется возможность параллельного опроса датчиков. Или про 53 линии i/o у мега 64/128? Так это мои рассуждения на вопрос namelos-аЦитата Хотелось бы теперь опрашивать с помощью одного контроллера до 40 датчиков DS18B20 с подсоединением каждого на отдельный вход. Какой МК порекомендуете? Везде имеются ввиду датчики DS18B20
--------------------
|
|
|
|
|
  |
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|