Всем привет!
На всякий случай, может кто столкнется с проблемой.
Похоже, накрылся у меня GPIO4, на котором сидит w1. Симптомы все как здесь:
https://www.raspberrypi.org/forums/viewtopic.php?p=732177
Переключился на GPIO 2 и прописал в config.txt
dtoverlay=w1-gpio,pullup=on,gpiopin=2
Все заработало. А мучился целый день, все прозванивая...
Теперь бы понять, с чего бы он накрылся?
Ненавязчивая автоматизация ректификационной установки
HBB
Кандидат наук
Москва
356 94
Отв.320 17 Мая 17, 23:28
makh
Профессор
Sаmara
2.1K 1.1K
Отв.321 17 Мая 17, 23:44, через 16 мин
Тремястами Процентами Прибыли™.
HBB
Кандидат наук
Москва
356 94
Отв.322 17 Мая 17, 23:58, через 14 мин
Все больше утверждаюсь в мысли, что w1 надо выносить в отдельный блок. Не тянет его IMHO малинка нормально. В сети комменты, что w1 слетел после апдейта, похоже и у меня то же самое произошло.
А как WEB-морда появится, с эскуэлями, так может и вообще все придется переделывать. Похоже, надо на переправе с этим разбираться.
А как WEB-морда появится, с эскуэлями, так может и вообще все придется переделывать. Похоже, надо на переправе с этим разбираться.
Отв.323 18 Мая 17, 00:14, через 16 мин
HBB, ты красаучег что ле? один провод работает на нодмсу на всех ардунях на малине-апельсине. Да он работал лет за 10 раньше, чем они все появились. Жди сигнала. Как все будет - тебе сообщат
HBB
Кандидат наук
Москва
356 94
Отв.324 18 Мая 17, 00:37, через 24 мин
capsolo, выпил рюмаху за твое здоровье! Жду, когда твоя установка заработает!
makh
Профессор
Sаmara
2.1K 1.1K
Отв.325 18 Мая 17, 01:04, через 27 мин
HBB, малину (по крайне мере первую) можно было убить совсем насмерть просто ткнувшись пальцем в GPIO разъем. Т.е. это факт просто игрушка для демонстрации концептов. Там нет никакой вообще прокладки меджу камнем и пинами коннектора. Синтетическая или шерстяная тряпка на теле, и все, до свидания. В продакшне ее использовать нельзя. А если очень хочется, то надо хотя бы подключать датчики плотно накрученной витухой.
Для продакшна другие железки есть. Софт с прототипной малины переносится с помощью известной матери, конечно, но все равно за пару часов. Гуглить XTENDLAN, например:
Добавлено через 9мин.:
Для продакшна другие железки есть. Софт с прототипной малины переносится с помощью известной матери, конечно, но все равно за пару часов. Гуглить XTENDLAN, например:
Добавлено через 9мин.:
x86MX/933MHz, fanless, 1GB DDR2, 1x LAN 10/100Base-T, SD bootable, 3x USB, 2x PS/2, VGA, 2x RS-232, 1x RS-485.
115x115x35mm, PXE, 24x GPIO, 1x SPI, 2x I2C, 16x PWM.
HBB
Кандидат наук
Москва
356 94
Отв.326 18 Мая 17, 01:20, через 17 мин
makh, согласен. Сделав не один выгон на малине, понимаю, что создать полноценную (не хочу вдаваться в детали) систему с ней не получится. В погоне за дешевизной, теряем на надежности и предсказуемости развития. Однако, хочу отдать должное, для исследовательских целей и развития (python, например или WEBIOPI) лучшего на настоящий момент не придумали. Опять же IMHO.
makh
Профессор
Sаmara
2.1K 1.1K
Отв.327 18 Мая 17, 01:26, через 6 мин
Да. Для прототипирования самое то. И вроде как на третьей даже обещали что-то вроде production-level операционки. Даже жаль, что для себя любимого нету области применения .)
OldBean
Доцент
Красноярск
1K 1.4K
Отв.328 18 Мая 17, 05:01
Похоже, накрылся у меня GPIO4, на котором сидит w1.HBB, 17 Мая 17, 23:28А саму-то ножку GPIO4 (как GPIO) проверяли? Просто подключить к ней светодиодик с резистором (или осциллограф) и "подергать" пин из малинки? Хотелось бы понять что конкретно случилось: сам порт вылетел или софтина отказала? Если физически вылетел порт, то от чего? Наводка, статика или просто дурь (ну типа подачи 5В на 3.3-вольтовый порт)?
В продакшне ее использовать нельзя.makh, 18 Мая 17, 01:04Ее еще много где нельзя использовать. Да и вообще - поганое устройство. И легкое, и в руке плохо лежит, и гвоздики гнутся, если не совсем точно по ним попадаешь... :)
Сделав не один выгон на малине, понимаю, что создать полноценную (не хочу вдаваться в детали) систему с ней не получится.HBB, 18 Мая 17, 01:20Сделав не один десяток ректификаций на малине (посмотрел точнее - в сумме 55 на данный момент), понимаю, что это - несколько поспешное утверждение, требующее конкретизации и обоснования. Т.е. тут нужно как раз "вдаваться в детали". А именно, архитектура и вариант реализации системы, условия, в которых она эксплуатируется, критичность (стоимость) сбоев и т.д. По-человечески, я понимаю, что серьезный отказ устройства всегда огорчает. Но стОит ли сразу делать такие выводы и рождать очередной форумный миф? Ну типа того, что малинка годится лишь только для прототипирования. Или вообще - только обучения детей Linux-у и программированию?
Длинная и как попало сделанная шина 1-Wire, непосредственно подключенная к GPIO4 малинки, в условиях сильных наводок - действительно довольно слабое звено. Я как-то писал в начале этой ветки, что иногда во время пауз, когда установка была выключена, у меня "пропадали" все датчики DS18B20 с шины. Так вот, причина этого оказалась до смешного простой. У меня низко над рабочим столом, где находится малинка со своими подругами-ардуинками, висит старая (еще советская) мощная люминесцентная лампа с жутким стартером. Так вот, вечером, окончив очередной этап ректификации, я обычно выключал высокое (220) на установке, саму лампу (!) и уходил. Утром прихожу, а малинка датчиков не видит (ну это - иногда). Причина оказалась в сильной наводке, которая возникала как раз при выключении этой мощной лампы. Один датчик (и, кстати, отнюдь не малинка!) от этой наводки "слетал" и блокировал шину 1-Wire.
Ну просто нужно "руки мыть перед едой" и тогда живот болеть не будет. Витая пара, как справедливо отмечает коллега makh (экранированная еще лучше), тщательный анализ и устранение сильных помех (наводок), да и просто аккуратное обращение с платами и проводами. И, в результате, ваша малинка будет трудиться долго и счастливо. И будет доставлять вам только радость. :)))
PS
Кстати, о "развитии" и предсказуемости. Я здесь, конечно, не "вообще", а только о том, о чем говорится в данной ветке.
1. Прототип "температурного серверка" (где температурными датчиками занимается отдельная ардуинка, связанная с малинкой по i2c) я сделал и погонял в прошедшие праздники. В общем-то получился вполне работоспособный (и, с одной кнопочкой, вполне терпимый с точки зрения usability) вариант, который может заметно повысить безопасность самой малинки. Но доводить его "до ума" пока просто не хватает "мотивации" - вроде итак (без него) все нормально работает. Поэтому с "температурным серверком" - пока "по остаточному принципу".
2. Можно попробовать специальный USB-адаптер для 1-Wire (DS9490R). У меня где-то валяется парочка. Сто лет назад еще заказывал для совсем других задач, но, по разным причинам, так и остались валяться. Конечно, не самое дешевое решение, но зато аж двойная защита по шине 1-Wire у малинки будет. И фирменный лейбл на заднице :) Если с драйверами проблем не будет, то, в принципе, можно попробовать как-нибудь и такой вариант (увы, тоже - уж совсем на досуге :))
3. Ну и третье. В развитие. Я сейчас очень неспешно (пока на уровне фантазерства) продумываю "ненавязчивую автоматизацию Lite" (шуточное название). Это тоже будет иерархическая система. Ядро - малинка с небольшим (7-10") дисплейчиком, клавиатурой и мышкой. Или сенсорный дисплейчик. Еще не решил что будет удобнее. К малинке по быстрой i2c будут подключены несколько МК (пока остановился на авр-ках, типа ATmegaXX8). Каждый МК будет выполнять довольно узкий круг RT-операций с периферией (дергать затворы симисторов, мосфетов, измерять что нужно; в том числе и температуру, и т.п.). Дополнительной 7-сегментной индикации, кнопочек и автономной работы отдельных модульков (ну как в существующей системе с ардуинками) уже не будет. Как показывает опыт, это удобно на начальном этапе и экспериментировании, но при рутинной работе уже не так актуально. Это существенно упростит софт, повысит надежность и уменьшит стоимость системы в целом. Малинка вообще не будет связана непосредственно ни с какой периферией. Только через МК. Все это добро (и МК и то, что к ним подцеплено снаружи) планируется оформить в виде отдельного единого шилда для малинки.
Ну вот такие задумки на тему о "надежности и предсказуемости развития" ((c) HBB :).
К сожалению, сейчас очень сложно со временем, но может быть летом удастся заняться вариантом Lite поплотнее...
HBB
Кандидат наук
Москва
356 94
Отв.329 18 Мая 17, 13:21
OldBean, я как раз об этом же и писал, что желательно делать температурный сервак, а также и независимый РМ, в противном случае, при установке WEB-сервера на малинку, предполагаю высокую загруженность процессора со всеми вытекающими - перегрев, ошибки. Другое дело, не описав функционал web-морды, пока рано говорить об этом серьезно, тут больше интуиции. Если идти по, примерно, такому пути http://asutp.ru/?p=600496, то предполагаю, ресурсов не хватит. У нас же и W1 и Брезенхем, и графики...
Когда система работает в соседней комнате, и ты всегда имеешь возможность вмешаться в процесс, это одно. А когда ты на работе?
На консольном же уровне (SSH) и даже ГУИ (VNC) у меня и сейчас система работает и управляется удаленно, вплоть до мобильника. Даже камера следит за процессом брожения.
Кстати, у меня тоже валяется без дела свисток DS9490R (стоит теперь дороже малинки). И он себя зарекомендовал очень хорошо.
GPIO4 хотел сегодня проверить на релюхе или светодиоде. Проверял только тестером, вольтаж дает.
Вот еще ссылочка
http://oscada.org/ru/glavnaja/reshenija/
Когда система работает в соседней комнате, и ты всегда имеешь возможность вмешаться в процесс, это одно. А когда ты на работе?
На консольном же уровне (SSH) и даже ГУИ (VNC) у меня и сейчас система работает и управляется удаленно, вплоть до мобильника. Даже камера следит за процессом брожения.
Кстати, у меня тоже валяется без дела свисток DS9490R (стоит теперь дороже малинки). И он себя зарекомендовал очень хорошо.
GPIO4 хотел сегодня проверить на релюхе или светодиоде. Проверял только тестером, вольтаж дает.
Вот еще ссылочка
http://oscada.org/ru/glavnaja/reshenija/
OldBean
Доцент
Красноярск
1K 1.4K
Отв.330 18 Мая 17, 15:57
предполагаю, ресурсов не хватит. У нас же и W1 и Брезенхем, и графики...HBB, 18 Мая 17, 13:21Если я правильно понял, то тут дело не только, и даже не столько в ресурсах. На самом деле проблема - в попытках решения RT-задач (например, связанных с РМ) на малинке с обычным Linux, который не является системой реального времени (RT - Real Time). Т.е. не гарантирует заданного времени реакции системы. А это чревато труднолокализуемыми сбоями и ошибками управления.
В данной же ветке (которая "ненавязчивая автоматизация") рассматривается вариант двухуровневой системы, где эти задачи (RT и не RT) четко разделены по устройствам. RT-задачи выполняются ардуинками, которые не содержат ОС и в большинстве своем могут гарантировать необходимое время реакции системы. Это - первый "слой" системы управления. Задачи же, которые не требуют RT, но достаточно сложны и трудоемки могут выполняться на устройствах с ОС, которая берет на себя существенную часть требуемого функционала. Это второй слой (уровень) системы автоматизации. В данном случае его реализует малинка с ОС Linux.
Именно так в этой ветке находится компромисс между RT- и не RT-задачами: за счет четкого разделения их по устройствам разных уровней. Иначе, для обеспечения RT и сложных не RT-задач "в одном флаконе", пришлось бы писать монстроподобные приложения (причем, практически с нуля) на "голых" (т.е. без ОС) мощных ардуинках или ARM-ках. Кстати, примеры таких решений можно найти и на нашем форуме.
gol_avto
Доцент
Москва - Серпухов - Анапа
1.3K 458
Отв.331 18 Мая 17, 16:25, через 28 мин
А почему обязательно Linux, чем Win не устраивает?
HBB
Кандидат наук
Москва
356 94
Отв.332 18 Мая 17, 16:34, через 10 мин
OldBean, я прекрасно все понимаю и полностью согласен. Конечно, бегу впереди паровоза, но я трижды брался за написание WEB-морды, и прекратил это мероприятие именно по причине того, что на тех этапах ориентировался на решение RT-задач при помощи малинки и Линукса (можно почитать ветку моего уважаемого коллеги Co-Bella [Smart Distiller (Умный дистиллятор с управлением по интернет)]).
Однако, повозившись с малинкой и периферией пришел к выводу, что браться за столь серьезную задачу, как WEB-сервер пока нет надежного RT решения по W1 и РМ, глупо. В моих планах автоматизация теплиц, а там магистрали подлиннее и мощности побольше.
В любом случае, коллега, пользуясь случаем, выражаю уважение к твоему труду и желаю удачи! ;)
Однако, повозившись с малинкой и периферией пришел к выводу, что браться за столь серьезную задачу, как WEB-сервер пока нет надежного RT решения по W1 и РМ, глупо. В моих планах автоматизация теплиц, а там магистрали подлиннее и мощности побольше.
В любом случае, коллега, пользуясь случаем, выражаю уважение к твоему труду и желаю удачи! ;)
OldBean
Доцент
Красноярск
1K 1.4K
Отв.333 18 Мая 17, 19:08
А почему обязательно Linux, чем Win не устраивает?gol_avto, 18 Мая 17, 16:25Не обязательно. Можно и Win, если нравится. Правда не знаю какой сейчас уровень Windows для малинки. Т.е. можно ли на нем реально работать. Может быть это - просто "огрызок" для разработчиков. Честно говоря, никогда не верил в щедрость Microsoft. Но мы же сейчас говорим о концепте. Поэтому, на малинке тоже свет клином не сошелся. В принципе можно любой микрокомпьютер, планшет, десктоп или ноут приспособить вместо малинки. С любой ОС. А шилд с RT-модулями подключить к нему, например, через адаптер USB-I2C. Здесь можно много всяких интересных вариантов нафантазировать ;)_
Tomat7
Магистр
Черноморская губинния
235 138
Отв.334 19 Мая 17, 11:27
1-Wire, непосредственно подключенная к GPIO4 малинки, в условиях сильных наводок - действительно довольно слабое звено.Фууух! А я то думал что это у меня кривые руки и глюки в лаборатории! На столе всё работает по несколько суток, а в лабе датчики отваливаются за 2-4 часа. Причем может один-два, а могут все пять пропасть. Еще могут как-бы не отвалиться, а просто выдавать "0". И вся вредность ситуации что снова их увидеть иногда получалось только после "холодного" рестарта малины.
...
у меня "пропадали" все датчики DS18B20 с шины.OldBean, 18 Мая 17, 05:01
Боролся по разному:
- софтом - еще до НГ написал обработчик эксепшенов (каждый датчик в своем потоке) который отлавливал пропадания DSки,
выставлял флаг стопа и слал SMSки мне на телефон. но это даже не борьба, а ускорение исправления ситуации.
- запитывал DSки от 5 вольт (подтяжка 4.7к всё равно на 3.3в, иначе малинка прокиснет). вроде чуть получше стало, но глюки не пропали.
Потом подключил к малине по I2C контроллер DS2482S-100 как здесь - http://raspberrypi.tomasgreno.cz/thermal-sensor-i2c.html.
Но решил перестаховаться - заменил на DS2482S-800 и к нему уже DSки - каждый датчик на своей шине 1wire.
Тоже есть свои заморочки, но пока полет нормальный - самое приятное, что подключение датчиков проходит "на лету" за несколько секунд.
Сделав не один выгон на малине, понимаю, что создать полноценную (не хочу вдаваться в детали) систему с ней не получится.HBB, 18 Мая 17, 01:20
Да. Для прототипирования самое тоmakh, 18 Мая 17, 01:26Тоже пришел к этому выводу, как бы ни грустно это было.
HBB
Кандидат наук
Москва
356 94
Отв.335 19 Мая 17, 12:04, через 38 мин
А саму-то ножку GPIO4 (как GPIO) проверяли? Просто подключить к ней светодиодик с резистором (или осциллограф) и "подергать" пин из малинки? Хотелось бы понять что конкретно случилось: сам порт вылетел или софтина отказала? Если физически вылетел порт, то от чего? Наводка, статика или просто дурь (ну типа подачи 5В на 3.3-вольтовый порт)?OldBean, 18 Мая 17, 05:01
Вчера проверял пины по этому поводу на релейном модуле.
GPIO2 задействован на W1 через config.txt - работает и на w1 и на реле. GPIO4 - ни там ни там, GPIO3 - та же фигня. На всех трех ногах 3,3 вольта по умолчанию. Другие пины вроде работают - делал выборочную проверку.
Сохранился лог-файл последнего выгона. Пробежавшись по нему вспомнил, что процесс прерывался 2 раза из-за слета датчиков (перезагружал малинку).
Еще припоминаю, но это было не при этом выгоне а при перегоне браги на НБК, что меня тряхануло током, когда дотронулся до колонны (никак не сделаю контур заземления в винокурне). Куб работает как парогенератор на аристоновском тэне. Подумал, что тэн пробило. Проверил - вроде не коротит, и сейчас все работает нормально. Клапана от стиралок тоже питаются от 220. Может там что? Позавчера выгонял вручную, ничего нигде не трясло.
Вот такая загогулина...
OldBean
Доцент
Красноярск
1K 1.4K
Отв.336 19 Мая 17, 14:20
а в лабе датчики отваливаются за 2-4 часа. Причем может один-два, а могут все пять пропасть.Tomat7, 19 Мая 17, 11:27Если честно, то как-то не очень понятно - причем здесь малинка? От наводки отваливается (часть !) датчиков, а "виновата" бедная малинка?
И еще. В той фразе, на которую Вы ссылаетесь есть начало: "Длинная и как попало сделанная шина...". В нем-то и суть. Имелось в виду, что шина может сработать как антенна и "убить" (при сильной наводке) порт малинки. Что, возможно, как раз и произошло, судя по крайнему топику HBB :(
У меня от наводки отваливался обычно только один датчик. Но при этом он "притягивал" шину к 0. Фактически блокировал ее. Поэтому "пропадали" с шины все датчики. После сброса датчика или всей шины (отключения его/ее от питания и подключения опять) малинка сразу же находила эти датчики и продолжала нормально с ними работать. Поэтому не стОит малинку обижать понапрасну? :) Тут скоре с шиной и наводками нужно возиться. Или, на худой конец, что-нибудь 5-вольтовое в качестве буфера поставить. Все же реже "слетать" будет, чем на 3.3V.
Кстати, фазовый регулятор, в отличие от Брезенхема, может давать сильные наводки.
Вот такая загогулина...HBB, 19 Мая 17, 12:04Соболезную. Если тестирование было проведено корректно, то, похоже, 3 и 4 пины погибли. Хорошо, что сама малинка осталась жива и у нее еще много пинов ;) Но, все-такие не поленитесь - заземлите железо. Клапаны - не критично, но вот с ТЭНами работать без заземления, действительно, очень опасно. Причем, не только для электроники.
Dmi_D
Кандидат наук
Минск
393 138
Отв.337 20 Мая 17, 17:31
OldBean, а что если воткнуть по I2C и 1-wire вот такой переходник:
https://de.aliexpress.com/...2764407497.html
По идее, его одного хватит перекрыть все наши связи малинки с ардуинами/датчиками. Тогда и датчики можно свободно запитать от 5В, а это какая-никакая, но защита от помех.
Сильно не пинай, я только-только получил свою первую малинку (точней, апельсинку), поэтому опыта ноль, и идеи могут возникнуть самые бредовые. Кстати, одна из них,- подтяжку на ds-ках делать на 3.3В, а питать от 5В. По идее, уровни должны согласоваться, а вот сигнал поярче будет.
https://de.aliexpress.com/...2764407497.html
По идее, его одного хватит перекрыть все наши связи малинки с ардуинами/датчиками. Тогда и датчики можно свободно запитать от 5В, а это какая-никакая, но защита от помех.
Сильно не пинай, я только-только получил свою первую малинку (точней, апельсинку), поэтому опыта ноль, и идеи могут возникнуть самые бредовые. Кстати, одна из них,- подтяжку на ds-ках делать на 3.3В, а питать от 5В. По идее, уровни должны согласоваться, а вот сигнал поярче будет.
сообщение удалено
Dmi_D
Кандидат наук
Минск
393 138
Отв.338 20 Мая 17, 21:18
Хорошо, а если вот такое:
https://ru.aliexpress.com/...0308.0.0.O5yVaQ
Тоже восемь каналов, насчет инвертирования еще не смотрел.
2 sevpro
Глянул даташит на 74lcv......
Штука заманчивая, но не пойму, кто ей будет задавать сигнал 'dir',то есть направление передачи.
На тех модулях, что я нашел, стоит отдельный разъем на кодировку направления, а шина I2C двунаправленная, и какая ..... будет отслеживать что и куда передать?
https://ru.aliexpress.com/...0308.0.0.O5yVaQ
Тоже восемь каналов, насчет инвертирования еще не смотрел.
2 sevpro
Глянул даташит на 74lcv......
Штука заманчивая, но не пойму, кто ей будет задавать сигнал 'dir',то есть направление передачи.
На тех модулях, что я нашел, стоит отдельный разъем на кодировку направления, а шина I2C двунаправленная, и какая ..... будет отслеживать что и куда передать?
сообщение удалено
OldBean
Доцент
Красноярск
1K 1.4K
Отв.339 21 Мая 17, 11:33
Коллеги, ну если уж все равно ставить дополнительный корпус на ds-ки, то может лучше сразу поставить AVR-ку и организовать таким образом что-нибудь типа "температурного серверка"? Ну, например, так:
В принципе, AVR-ку можно поставить любую. Даже какую-нибудь младшенькую тиньку. Лишь бы ног хватило для i2c и необходимого количества датчиков. На картинке нарисован вариант на 6 датчиков, но свободных ног хватит еще для 12 дополнительных, если нужно :)
Заодно здесь и другие проблемы можно легко порешать. А именно: совершенно независимая работа датчиков (каждый на своей шине, что должно заметно увеличить надежность системы и упростить обмен - не нужно работать с ID-шниками датчиков), одновременный их запуск и чтение данных. Если еще экранированной витой парой датчики подключить, то, наверное, даже электросварка рядом не помешает их работе :)))
В принципе, AVR-ку можно поставить любую. Даже какую-нибудь младшенькую тиньку. Лишь бы ног хватило для i2c и необходимого количества датчиков. На картинке нарисован вариант на 6 датчиков, но свободных ног хватит еще для 12 дополнительных, если нужно :)
Заодно здесь и другие проблемы можно легко порешать. А именно: совершенно независимая работа датчиков (каждый на своей шине, что должно заметно увеличить надежность системы и упростить обмен - не нужно работать с ID-шниками датчиков), одновременный их запуск и чтение данных. Если еще экранированной витой парой датчики подключить, то, наверное, даже электросварка рядом не помешает их работе :)))