для нормальной работы датчиков
нужно только #include <OneWire.h>
остальное удобство и иногда удобства вносят ограничения типа больше одного-двух датчиков и хватит, остальные в сад.
НО, все ли датчики одинаковые ИМЕННО Б20,
есть ли еще один подбросить на проверку, может не софт, а железо. С DS ЭТО ИНОГДА бывает.
питания в такой схеме на десять хватит
Аппаратная платформа Arduino для автоматизации наших процессов
Брагин
Магистр
Краснодар
278 76
Отв.660 12 Дек. 13, 14:54
mihase
Специалист
Краснодар
165 74
Отв.661 12 Дек. 13, 15:20, через 26 мин
Подключение не звездой ?Bitner, 12 Дек. 13, 10:54Спасибо за наводку, распайку сделал, но не помогло, к тому же если опрос идет по коду датчика, то на одном метре не все ли равно как они связаны. Это если трасса метров пятьдесят, то от каждого отдельный провод нет смысла тянуть, поэтому цепляется на один провод в разрывы, я думаю.
#include <OneWire.h>Брагин, 12 Дек. 13, 14:54Уже тоже пробовал, в том то и дело, что датчики все б20, и на корпусе маркировка и программно определяется, и четвертый цеплял, результат то же что и три - no more addresses на все. C двумя работает. У меня датчиков 21 штука, выборочно беру их и проверяю, так что не в датчиках дело, по два в связке работают, более - нет. Как заколдовали.
Брагин
Магистр
Краснодар
278 76
Отв.662 12 Дек. 13, 15:49, через 29 мин
ок. знач програмно.
ну возьми самый первый скетч (V/07 или 09 зоветься) и залей ради интернса, тот точно 4 штуки видит и различает.
если увидит -то 100 пудово в коде касяк.
ну возьми самый первый скетч (V/07 или 09 зоветься) и залей ради интернса, тот точно 4 штуки видит и различает.
если увидит -то 100 пудово в коде касяк.
Брагин
Магистр
Краснодар
278 76
Отв.663 12 Дек. 13, 15:54, через 5 мин
и кстати no more addresses- это какая то библиотека говорит что не может больше двух увидеть, точнее запомнить.
я когда с библиотеками игрался -было так что датчик можно увидеть без записи его адреса, но только 1. сдесь тоже самое похоже и виновата как раз DallasTemperature.h
пысы.
ие сли я правильно понимаю программе нужно их найти и запомнить как сдесь
void loop(void) {
byte i;
byte present = 0;
byte data[12];
byte addr[8];
if ( !ds.search(addr)) {
Serial.print("No more addresses.\n");
ds.reset_search();
delay(250);
return;
}
я когда с библиотеками игрался -было так что датчик можно увидеть без записи его адреса, но только 1. сдесь тоже самое похоже и виновата как раз DallasTemperature.h
пысы.
ие сли я правильно понимаю программе нужно их найти и запомнить как сдесь
void loop(void) {
byte i;
byte present = 0;
byte data[12];
byte addr[8];
if ( !ds.search(addr)) {
Serial.print("No more addresses.\n");
ds.reset_search();
delay(250);
return;
}
lakmus
Специалист
С-Петербург
196 49
Отв.664 12 Дек. 13, 16:19, через 26 мин
-а по мне так дело в библиотеках - mihase сделай поиск в каталоге ардуины-
и думаю ты увидишь не одну библиотеку OneWire и Dallas - родные вроде глючные
а оболочка х/з какую берет - она слишком мягко относится к инклудам
поэтому их (родные) надо вообще убить(перенести из каталогов библиотек
$Arduino$\libraries\ и $Arduino$\sketchbook\libraries\ куданить нах)
-соединение звезда на коротких проводах не хуже дэйзи-чейна...
хуже только из-за того, что может увеличится общая длина проводов (они называют это весом сети - weight)и
добавится звон от каждого провода (отражение от концов и др неоднородностей )
что может стать помехой в работе
http://www.maximintegrated.com/app-notes/index.mvp/id/148
(Guidelines for Reliable Long Line 1-Wire Networks)
и думаю ты увидишь не одну библиотеку OneWire и Dallas - родные вроде глючные
а оболочка х/з какую берет - она слишком мягко относится к инклудам
поэтому их (родные) надо вообще убить(перенести из каталогов библиотек
$Arduino$\libraries\ и $Arduino$\sketchbook\libraries\ куданить нах)
-соединение звезда на коротких проводах не хуже дэйзи-чейна...
хуже только из-за того, что может увеличится общая длина проводов (они называют это весом сети - weight)и
добавится звон от каждого провода (отражение от концов и др неоднородностей )
что может стать помехой в работе
http://www.maximintegrated.com/app-notes/index.mvp/id/148
(Guidelines for Reliable Long Line 1-Wire Networks)
mihase
Специалист
Краснодар
165 74
Отв.665 12 Дек. 13, 22:55
Ребят, тут дело в другом, во-первых библиотеки в моей среде разработки все скачанные, все новые и проверенные, стоковые были сразу удалены, во-вторых, no more addresses говорит не библиотека, а в скетче прописано, что если микроконтроллер подавая запрос через шину на поиск подключенных устройств и их адресный код не получает ответ, всплывает надпись об их отсутствии. Соединение типо звезды, по-моему, как говорит lakmus может создать некоторые помехи и неточности в передаче информации(не правильная температура допустим), но тут ВООБЩЕ датчики(больше трех) не видит, ПРИЧЕМ повторюсь, один датчик видит, ДВА ПАРАЛЛЕЛЬНО ТОЖЕ ВИДИТ, значит работает библиотека, скетч и железо(тем более я менял на другую ардуину и все то-же), а вот третий подключаю, отрезает, как будто конфликт какой-то, датчики все проверенные, все работают. Вот и бьюсь уже второй вечер. А главное в этом процессе все просто, я имею ввиду работу по шине 1-Wire. Как так происходит, что за косяк у меня, возможно самый не значительный, но я пока его не вижу. В гугле, кстати тоже про подобную сетуёвину нет никто, именно про два работают а третий нет...
Брагин
Магистр
Краснодар
278 76
Отв.666 13 Дек. 13, 00:32
Вот делать мне больше нехрен, как по деревьям лазить! Матроскин "Цэ".
как ардуину программировать в час ночи!
Spirt, с тебя пузырь!
значит так, я на ардуино 023. без всяких переносов стоковых библиотек ..\\куданибудьнахер - вот что есть- то есть, откуда незнаю.
три датчика, но у меня сидят на 3 пине, ардуина 32кБ, без всяких танцев компильнулось-залилось=нарисовалось
все работает, где-то перенедомудрил. фото прилагаю.
один плюс - выдрал модуль РТС из самогоноварки,- пришел к выводу - в автоматике для сэма нах не нужен- не такой уж и долгий процесс.
пысы. скетч отсюда [сообщение #11838967]
как ардуину программировать в час ночи!
Spirt, с тебя пузырь!
значит так, я на ардуино 023. без всяких переносов стоковых библиотек ..\\куданибудьнахер - вот что есть- то есть, откуда незнаю.
три датчика, но у меня сидят на 3 пине, ардуина 32кБ, без всяких танцев компильнулось-залилось=нарисовалось
все работает, где-то перенедомудрил. фото прилагаю.
один плюс - выдрал модуль РТС из самогоноварки,- пришел к выводу - в автоматике для сэма нах не нужен- не такой уж и долгий процесс.
пысы. скетч отсюда [сообщение #11838967]
mihase
Специалист
Краснодар
165 74
Отв.667 13 Дек. 13, 01:01, через 30 мин
Андрей, да я безумно рад что у тебя все летает! )) Но ты пойми, мне разве что осталось, так это при запуске ардуины, через левое плечо поплевать, чтоб она увидела связку больше чем из двух датчиков, хотя я не уверен что это поможет. У меня есть куча модулей и датчиков разного характера, и все всегда работало и работает до сих пор, но вот этот момент со сволочными Даласами по одной шине я пока не раскусил.
Брагин
Магистр
Краснодар
278 76
Отв.668 13 Дек. 13, 01:13, через 12 мин
mihase, о блин, ЗЕМЛЯКИ! ну как бы направление задано - А023, пин3, с тебя пузырь.
хотя чудеса бывают- счас спиртовые дела в стороне, повторяю на ардуине автоматику от котла "Галан" или как там его, но в 20 раз дешевле чем в
оригинале. Тоже было, управление с ИК-пульта не хотело управлять без кнопок управления, так и не смог понять почему, пришлось прилепить, а так было влом.
ну вообщем - попробуй на старой платформе и поменяй ногу, мож поможет
пысы. ошибки исправил и все - спокойной ночи
хотя чудеса бывают- счас спиртовые дела в стороне, повторяю на ардуине автоматику от котла "Галан" или как там его, но в 20 раз дешевле чем в
оригинале. Тоже было, управление с ИК-пульта не хотело управлять без кнопок управления, так и не смог понять почему, пришлось прилепить, а так было влом.
ну вообщем - попробуй на старой платформе и поменяй ногу, мож поможет
пысы. ошибки исправил и все - спокойной ночи
mihase
Специалист
Краснодар
165 74
Отв.669 13 Дек. 13, 01:18, через 6 мин
Да ногу только поменял на 3, однофигственно, даже только-что вычитал что при "многодатчиковом" подключении резистор притягивающий должен быть ближе к контролеру чем к датчику, удлинил управляющий провод после breadbord-а к датчикам в четыре раза, угадай каков был результат. (
lakmus
Специалист
С-Петербург
196 49
Отв.670 13 Дек. 13, 05:33
Да ногу только поменял на 3, однофигственно, даже только-что вычитал что при "многодатчиковом" подключении резистор притягивающий должен быть ближе к контролеру чем к датчику, удлинил управляющий провод после breadbord-а к датчикам в четыре раза, угадай каков был результат. (таки на тебе мой работающий .hex и батник для его загрузки
mihase, 13 Дек. 13, 01:18
это для атмеги328,
на 10 пин подключи данные
поменяй в батнике пути на свой дуде и его конфиг
и свой COM порт поставь (у мну COM16)
загрузи...
включи 'сериал монитор' или там что другое на свой COM порт
бум думать
ато чтото нето
Брагин
Магистр
Краснодар
278 76
Отв.671 13 Дек. 13, 09:25
mihase, думаю удлиннение в четыре раза ни дало никакого результата, а вот перенос резистора поближе, - наверно помогло, он же подтягивающий, а не терминальный.
mihase
Специалист
Краснодар
165 74
Отв.672 13 Дек. 13, 13:38
Вот видео нацарапал, что к чему. http://youtu.be/ZmcHPC5UQxc
Брагин
Магистр
Краснодар
278 76
Отв.673 13 Дек. 13, 15:15
так а кто сбрасывать ардуинку будет перед новым определением датчиков???
кабель сбрасывает при программировании, но не при подключении.
у тебя есть адреса двух, а третим ты вносиш путаницу
ИМХО. надо жать reset при подключении нового датчика.
и скетч другой, а не этот ты прицепил выше.
кабель сбрасывает при программировании, но не при подключении.
у тебя есть адреса двух, а третим ты вносиш путаницу
ИМХО. надо жать reset при подключении нового датчика.
и скетч другой, а не этот ты прицепил выше.
lakmus
Специалист
С-Петербург
196 49
Отв.674 13 Дек. 13, 15:20, через 6 мин
похоже у тебя слишком большая емкость кабеля (в сумме трех получаешь больше 2-х нан)
подключи данные третьего четвертого и тд через резюки 910 Ом
(опытным путем подобрал - 240 Ом было мало)
а потом(если задышат) первого со вторым тоже...
у мну работали через 910 Ом два датчика в пассив моде
на их шину ставил кондюк 3наны и они умирали... остальные (которые напрямую)- работали
если без резюка - умирали все и как у тебя - ноуморе....
подключи данные третьего четвертого и тд через резюки 910 Ом
(опытным путем подобрал - 240 Ом было мало)
а потом(если задышат) первого со вторым тоже...
у мну работали через 910 Ом два датчика в пассив моде
на их шину ставил кондюк 3наны и они умирали... остальные (которые напрямую)- работали
если без резюка - умирали все и как у тебя - ноуморе....
Брагин
Магистр
Краснодар
278 76
Отв.675 13 Дек. 13, 18:38
mihase, слушай, а если банально- очень большой подтягивающий резистор + провода так себе.
минимум можно 0.5 ком, у тебя сколько 4-5? какие полосочки на резисторе?, уменьш до 2-3КоМ - не сломаеш.
минимум можно 0.5 ком, у тебя сколько 4-5? какие полосочки на резисторе?, уменьш до 2-3КоМ - не сломаеш.
mihase
Специалист
Краснодар
165 74
Отв.676 13 Дек. 13, 19:31, через 53 мин
Резюк, да, 4,7 у меня как во всей тех документации рекомендуют, попробую сегодня поставить в разрыв управляющих если найду 910. А сброс контролера совершенно не нужен, поскольку скетч определяет сходу адреса датчиков и пишет их в переменные.
lakmus
Специалист
С-Петербург
196 49
Отв.677 13 Дек. 13, 20:46
попробую сегодня поставить в разрыв управляющих если найду 910mihase, 13 Дек. 13, 19:31да 910 не догма - просто у мну соседние номиналы были все 0.125 - у них тоненькие ножки и они болтаются в макетке
а этот и 240 нашлись 0.25
поэксперементируй с одним подключенным чтоб не затыкался от резюка (чючють с запасом)
mihase
Специалист
Краснодар
165 74
Отв.678 13 Дек. 13, 21:40, через 54 мин
АЛЛИЛУЙЯ!!!!!!!!! Я так и знал что будет какая нибудь херотень. Андрей, ты прав насчет банальщины, поставил 2кОм подтяжку, засвистело! Поставил сначала 1кОм в разрыв управляющего, как lakmus описАл, нет результата, тогда его влепил на подтяжку, закрутилось, поменял на 2кОм. Я счастлив ) Если найду на 3кОм, попробую еще его.
Ребят, спасибо, за помощь, на резюк никогда бы не подумал.
Ребят, спасибо, за помощь, на резюк никогда бы не подумал.
ZSerje
Доцент
Obuhov-Kiev
1K 552
Отв.679 13 Дек. 13, 23:30
mihase, Страница 21 там стрелочка.