Форум самогонщиков Сайт Барахолка Магазин Помощь солдатам

Ненавязчивая автоматизация ректификационной установки

Форум самогонщиков Автоматика
1 ... 52 53 54 55 56 57 58 ... 132 55
m16 Модератор Тамбов 1.9K 1K
Отв.1080  30 Янв. 18, 14:01
ну,ну.  только больше не плодите басни о 64-х разрядном кошмаре 8-ми битников .
PavelSaratov Доктор наук Саратов 622 80
Отв.1081  31 Янв. 18, 01:42
Ну а цель-то какова? Просто руками втыкать-вытыкать - слишком медленно. Ничего не происходит. Каких-то провалов, чтобы малинка отрубилась не наблюдается. На 5-вольтовой шине крейта при включенной сети - 4.93V, без сети - 4.63V. Но если посмотреть "однократным вооруженным глазом", то при включении сети есть высокочастотный дребезг. Характерные частоты - от единиц МГц и выше. При выключении - никакого дребезга поймать не удается. На длительных (секудных) развертках - очень чистые маленькие ступеньки (4.93V <-> 4.63V). Без провалов и всплесков. Так что для безаварийного питания цифровой части системы - очень даже неплохое, готовое решение.

Щупы осциллографа "соплями" подключены, поэтому ВЧ-дребезг вполне может быть и от них, а не от упсика. Но сильно углубляться в эти вопросы сейчас просто физически нет возможности. Да и смысла особого в таком исследовании пока вроде бы не видно. А краш-тесты устраивать (не только для упсика, но для малинки с модулями) по понятным причинам не хотелось бы... Подмигивающий
Я имел ввиду как раз дребезг контактов. Проводком на входе от розетки поискрить. Ну раз не происходит, то не происходит. Наверное нормальная схема внутри по переключению между линией батарейки и линией катушки.
OldBean Доцент Красноярск 1K 1.4K
Отв.1082  31 Янв. 18, 05:25
Я имел ввиду как раз дребезг контактов.PavelSaratov, 31 Янв. 18, 01:42
Кстати, а вполне возможно, что дребезг на линии +5V при включении (я вчера говорил), связан как раз с дребезгом контактов выключателя переноски (для тестов я упсик подключил через переноску с выключателем). Не стал сильно злоупотреблять, но парочку снимков экрана осциллографа сделал (при быстрой развертке и медленной, см. приложение к топику).

Ну и в завершение темы про 5-вольтовый упсик, несколько снимков о том, как он устроен "унутре" ;) Тоже в приложении к топику. Преобразователь для питания от сети выполнен на SD6834, а обслуживание батарейки - на TC4056A. Глубже не вникал. Но, если заинтересуют какие-то подробности по потрошкам - спрашивайте. Пока раскручен - гляну и скажу. 
033_дребезг_при_включении.JPG
033_дребезг_при_включении.JPG Ненавязчивая автоматизация ректификационной установки. Автоматика.
034_переключения_сеть_батарейка.JPG
034_переключения_сеть_батарейка.JPG Ненавязчивая автоматизация ректификационной установки. Автоматика.
035_общий_вид_потрошков.JPG
035_общий_вид_потрошков.JPG Ненавязчивая автоматизация ректификационной установки. Автоматика.
036_плата_вид_сверху.JPG
036_плата_вид_сверху.JPG Ненавязчивая автоматизация ректификационной установки. Автоматика.
037_плата_вид_снизу.JPG
037_плата_вид_снизу.JPG Ненавязчивая автоматизация ректификационной установки. Автоматика.
ZagAl Доцент Прибалтика 1.9K 916
Отв.1083  31 Янв. 18, 11:55
OldBean, пробую подготовить тиньку к работе по описанию из сообщения [сообщение #13202256] . Для этого создал каталог /home/pi/ATtiny85, в котором три файла: usiTwiSlave.c, usiTwiSlave.h и main.c (с текстом проверки работоспособности нового МК). Но при компиляции получаю сообщение об ошибке:
main.c:6:20: fatal error: avr/io.h: Нет такого файла или каталога
#include <avr/io.h>
compilation terminated.

Что необходимо сделать, чтобы исправить ситуацию?
gol_avto Доцент Москва - Серпухов - Анапа 1.3K 458
Отв.1084  31 Янв. 18, 12:04, через 9 мин
пробую подготовить тинькуZagAl, 31 Янв. 18, 11:55
Так ведь от тиньки отказались. Перешли на ATMega328P
PavelSaratov Доктор наук Саратов 622 80
Отв.1085  31 Янв. 18, 12:09, через 6 мин
Вне зависимости от того на чем ты там делаешь - написано вполне четко - в проекте не хватает файла оглавления io.h как линковщик будет собирать если нет заголовочного файла?
И заваливается он на строке
#include <avr/io.h>
Как исправить? Да добавить путь к этой самой библиотеке в настройках проекта. Или скопировать ее в папку проекта.
Правда если ты собираешь а ардунонедостудии, как ее забыл название - тогда я пас, не знаю как там подключать.
ZagAl Доцент Прибалтика 1.9K 916
Отв.1086  31 Янв. 18, 12:18, через 9 мин
Как исправить? Да добавить путь к этой самой библиотеке в настройках проекта.PavelSaratov, 31 Янв. 18, 12:09
А где находится эта библиотека?
PavelSaratov Доктор наук Саратов 622 80
Отв.1087  31 Янв. 18, 12:28, через 10 мин
Ну как тебе объяснить. Я же не знаю как у тебя сделано, где куда что скачано. Попробоуй прямо поиском windows по всей системе набери в поиске "io.h"

OldBean, кстати а ты используешь GIT? Есть где то репозиторий или по старинке?
OldBean Доцент Красноярск 1K 1.4K
Отв.1088  31 Янв. 18, 12:29, через 2 мин
Что необходимо сделать, чтобы исправить ситуацию?ZagAl, 31 Янв. 18, 11:55
А "джентльменский набор" для компиляции (gcc-avr,  avr-libc и avrdude) установлен?


Добавлено через 3мин.:

Расскажите, pls, подробнее где и что Вы делаете. Компилируете в малинке?
OldBean, кстати а ты используешь GIT?PavelSaratov, 31 Янв. 18, 12:28
По жизни - да. В этой задаче нет. gcc-avr не так уж часто обновляется. Просто sudo apt-get install...
PavelSaratov Доктор наук Саратов 622 80
Отв.1089  31 Янв. 18, 12:42, через 14 мин
 Эмм я имел ввиду Git систему контроля версий для проекта. Ну т.е. ревизи где хранятся вашего проекта, а не компилятора. Удобно же  -кинул ссылку на репозиторий в гитхабе и не паришься кто где последнюю не последнюю версию берет. Правда справедливости ради, я сам только на днях для Keil настроил эту штуку, вот изучаю возможности для логгирования изменений. Поэтому и спросил, как пользуются, чтобы понять.
ZagAl Доцент Прибалтика 1.9K 916
Отв.1090  31 Янв. 18, 13:08, через 27 мин
OldBean,
Расскажите, pls, подробнее где и что Вы делаете.OldBean, 31 Янв. 18, 12:29
Все, спасибо, разобрался. Новую Raspberry Pi3 подготовил в соответствии с  п.п. 16.1.1. Часть 1 и 2. Установка и настройка ОС Raspbian ([сообщение #13179810]). А поскольку ATtiny85 еще не было в наличии, то настройку Geany на работу с кросс-компилятором AVR отложил на потом и естественно забыл об этом. Теперь все заработало.
OldBean Доцент Красноярск 1K 1.4K
Отв.1091  31 Янв. 18, 14:59
Ну т.е. ревизи где хранятся вашего проектPavelSaratov, 31 Янв. 18, 12:42
Нет. Свои проекты ни разу не пробовал. Если LITE получится - можно будет на ней попробовать. Когда разберетесь расскажите?

Теперь все заработало.ZagAl, 31 Янв. 18, 13:08
Ну и замечательно! Удачи!
PavelSaratov Доктор наук Саратов 622 80
Отв.1092  31 Янв. 18, 21:27
Когда разберетесь расскажите?
Ну вкратце - когда Git используешь, если бесплатно (тебе не надо свой код прятать от всех) - выкатываешь на github. Потом просто этот репозиторий как мастер.
На локальной машине делается полная копия(хоть с драйверами, вообще просто как яндекс диск). Потом ты чего то накрутил скажем в файле main.c. Делаешь commit. Владелец центрального репозитория быстро получает систематизированную информацию чего изменилось (как я понимаю вообще до строчки). Ну и накатывает ее на основной репозиторий если хочет.
В чем плюсы? Ну мастер файл (Встречались наверное с такой надписью на буржуйских документах (Master)) - всегда один на github. Кто то вам заслал изменения или вы сами - видны различия. Если чето не нравится - хотя бы идею посмотришь где конкретно в проекте чего наменяли/наменял.
У буржуев мастер всегда один для данной ревизии чего угодно. А у нас отксерили документ и вот уже два мастера, потому как через месяц опять кто то отксерил очередную ревизию и выкатил в пакете документов (и это на взывопожароопасном предприятии). В общем контроль версий - этим все сказано.
Чем удобно для нас и наших проектов частного порядка - читай код и изменения и трекинг и все остальное прямо в инете. Всегда все самое свежее. Нет разночтений в версиях от одного человека (владельца репозитория). Ну и что не маловажно - скачиваешь прямо целый проект хоть zip и просто распаковав получаешь точную полную копию со всей обвязкой (в частности вопрос выше не возник бы про io.h скорее всего)
Ну какой пример привести.. вот к примеру https://github.com/PaulStoffregen/OneWire
Один из примеров коммита к этому репозиторию https://github.com/...1269ffe5fcbbb46
Там есть кнопка - загрузить всю фалйовую структуру проекта как зип (зеленая кнопка). А можно форк делать (чего я про это спросил - у вас слово форк встретил).
PS это если без стеба вопрос был. В частности в параллельной теме - если бы на ардуине не было все в одной портянке - им легко было бы системно выкатить основные их версии. А сейчас - скачайте туто версию без того то и вот тааам работает такто.

Как я понял - вы пользуетесь чужими уже репозиториями? Тогда не совсем понял, что именно вам интересно "как разберетесь расскажите"
BogAD Кандидат наук Красногорск - Белово 403 184
Отв.1093  31 Янв. 18, 21:44, через 18 мин
Вчера пришли из поднебесной парочка вот таких мини-упсиков:
....OldBean, 30 Янв. 18, 05:33
Отлично. Сергей, я ждал этого поста.
Очень даже нормально, но есть "запрос" к тебе на некоторые ситуации.
Причем, допускаем, что "объект" контроля на расстоянии за десятки км. Помнится, ты об  этом упоминал по существу.


В процессе нашего любимого дела, случилось:
1. Пропала электроэнергия в сети питания. Потомки Чубайса на линии работают...  
2. Случилось форс-мажор с ТЭНами с отключением ДИФа.
3. Сел аккумулятор Li-ION.
4. ... или еще, на твой выбор.

Подумаем, как мы можем увидеть эти пункты при помощи нашего оборудования.
П.1
Криминала нет. Внешний форс-мажор, не зависящий от нас (ну если щиток квартиры/дома в норме).
Можно остановиться и перезапуститься после появления напряжения.
Тут все в норме. Определяем по напряжению от RMS.
Питаем Малинку и периферию (АтМЕГИ) от UPSa.
П.2
Тут сложней. Как отличить это от П.1?
Городить дополнительный RMS или другой индикатор наличия напряжения на входе до ДИФа?
Тут не все так однозначно. Но, я считаю, об этом случае необходимо предупредить хозяина, что это истинно аварийная ситуация, сработала защита, самостоятельный рестарт не возможен. Необходимо личное вмешательство.
Забегаю вперед - для определения этого я запланировал микрик на положение флажка ДИФа.  
[сообщение #13220498]
Но тут надо завязывать микрик на модуль GPIO или закидывать на 40-ой разъем, чтоб Малинка сама обрабатывала.
П.3
В ожидании напряжения в ситуации П.1, банально не хватило емкости АКБ.
Я тут не совсем в курсе, но, как при предлагаемом UPSe это пройти безболезненно. Как правильно уснуть и правильно проснуться?  Надо ли мерить напряжение на АКБ? Компаратор соображать или делать аналоговый GPIO? Похоже и дискретный GPIO надо тут прикручивать.
Но хочется часов 12 на сон без "усадки" АКБ...

Как говорил Галустян
"... НЕЕЕЕЕ!!!!'ИСКЛЮЧ-ЕЕ-но..."
надо продуматься.  
Но как к этим вопросам приспособить предлагаемый UPSик?....

Сергей, какие твои мысли  оп пунктикам?

ЗЫ Улыбающийся Прошу "мерси". Пока не вернулся из коммандировки. Поэтому не чем похвастаться. В наличии "дома" готовые платы на Тиньке, которые определены на распайку. Так что как то так... По приезду, закупка материала, ЛУТ (а может и попробую фоторезист), травление... К сожалению пока нет полноценной лаборатории, какая была. Завтра год как пришлось по работе переехать в Белокаменную из Кузбасса. На съемном жилье не сильно размахнешься...  
сообщение удалено
OldBean Доцент Красноярск 1K 1.4K
Отв.1094  01 Февр. 18, 03:53
Как я понял - вы пользуетесь чужими уже репозиториями? Тогда не совсем понял, что именно вам интересно "как разберетесь расскажите"PavelSaratov, 31 Янв. 18, 21:27
Да. Я в работе использую много свободного ПО, часть которого доступна по git. Но для своих проектов никогда не использовал, т.к. они, как правило, ориентированы на внутреннее использование и не рассчитаны на какое-нибудь распространение и сопровождение. То, что я пишу здесь для форума - редкое исключение из этого режима работы. Поэтому этот вопрос у меня совсем "не готов" ;)

Тем не менее, проблема контроля версий уже встала даже для старого варианта "ненавязчивой автоматизации". Модули и главный скрипты местами несовместимы между версиями. Возникает путаница. Особенно у новичков в питоне. Отношение к текстам скриптов у них, по вполне понятным причинам, несколько настороженное, поэтому тексты заголовков мало кто смотрит.

Git - хороший вариант для таких дел. А, поскольку Вы с ним разбираетесь (для своего репозитория, насколько я понял), то было бы интересно услышать впечатления, как говорят, "из первых рук" :)

какие твои мысли  оп пунктикам?BogAD, 31 Янв. 18, 21:44
I. Мне кажется для начала нужно четко разделить два типа аварийных ситуаций:

1. Временные (внешние) отключения внешних ресурсов (электричества и/или воды охлаждения)
2. Внутренние аварийные ситуации (пробит ТЭН, сорвало шланг воды охлаждения и т.п.)

В первом случае имеет смысл автоматический или дистанционный запуск установки после восстановления подачи ресурсов. Во втором - нет. Нужно обязательно все хозяйство отревизировать.

Как различить эти ситуации? По электричеству более-менее понятно. Главный индикатор - дифавтомат. Вырубился или нет. Если не вырубился - значит было внешнее отключение. При появлении сети (датчик RMS об этом сообщит малинке) можно провести автоматический или дистанционный перезапуск установки. Ну а если вырубился - тут все однозначно - нужно идти/ехать к установке. Все равно сам не включится ;) Датчик RMS стоит после дифавтомата. Поэтому он всегда будет показывать отсутствие сети.

По воде у меня пока вообще ничего не стоит. Кроме крана. Ни клапана, ни датчика давления воды в системе охлаждения (или водопроводе). Но суть должна быть примерно такой же, как и для электричества.

II. Теперь о том, как малинке и контроллерам пережить трудные времена, когда нет электричества. Детально с этим вопросом я еще не разбирался, но основная идея понятна - и малинку и МК контроллеров нужно переводить в "спящий" режим с малым энергопотреблением. Кстати, для этого вполне может пригодиться та самая линия Int. Например, если высокий уровень на ней - нормальный, рабочий режим, а если низкий уровень - все модули вместе с малинкой заваливаются спать ;)

С какой-нибудь периодичностью (например, раз в минуту или раз в десять минут) малинка просыпается, активирует датчик RMS и смотрит появилась ли сеть. Если нет - все продолжают дрыхнуть. Если да - всем подъем и - на работу!

В экономичном режиме энергопотребление обычно очень мало и я надеюсь, что батарейки упсика хватит на много-много часов. Но, еще раз подчеркну, что детали перехода в экономичный режим, функционирование системы в этом режиме и варианты обратного перехода я еще никак не продумывал. Пока только на уровне общей идеи.
lesbeg Доктор наук Екатеринбург 657 458
Отв.1095  01 Февр. 18, 08:49
т.к. они, как правило, ориентированы на внутреннее использование и не рассчитаны на какое-нибудь распространение и сопровождение.OldBean, 01 Февр. 18, 03:53


pip install git+remote_git_repository_uri

pip install hg+remote_mercurial_repository_uri

pip install git+remote_git_repository_uri@some_branch
...


PavelSaratov, Павел, ты много раз употребляешь термин мастер совершенно не в контексте гита. Мастер здесь это не гриф на документах и не роль ведущего устройства и не признак главенства. master -- это роль и иногда название конкретной ветки (акцентирую, ветки, а не репозитория). Ветка в git это по сути отдельный экземпляр кодовой базы состоящий из списка указателей на коммиты.

Ветка с названием "master" есть у значительной части проектов на git, но ее может и не быть, или иногда она называется stable. По соглашению мастером называют ветку, в которой хранится последняя стабильная версия кода. Т.е. мастер должен быть в любой момент времени безусловно готов к деплою в продакшн. Вся разработка ведется в других ветках, причем как правило на каждую задачу приходится своя ветка (это хорошая практика).

И еще нет центрального репозитория. Есть локальный и удаленный, но они равноправны, поэтому тебе и доступен pull и push, а все конфликты при merge разруливает разработчик.

Ну вкратце - когда Git используешь, если бесплатно (тебе не надо свой код прятать от всех) - выкатываешь на githubPavelSaratov, 31 Янв. 18, 21:27

у github-а есть разные типа аккаунтов, а bitbucket дает пять бесплатных закрытых репозиториев на бесплатном аккаунте. Кроме того, ты ошибочно отождествляешь git и github, это примерно тоже самое что отождествить smtp\pop3\imap\etc и gmail.com. github -- хостинг удаленных репозиториев git + соцсеть. Поэтому там царит опенсорс и молодость. bitbucket -- хостинг удаленных репозиториев (git и Mercurial) + инструменты управления разработкой, ориентированный на злой энтерпрайз, поэтому там есть jira (не на бесплатном аккаунте) и много других ништяков.

Про остальное писать уже не буду, итак многабукав вышло.
PavelSaratov Доктор наук Саратов 622 80
Отв.1096  01 Февр. 18, 17:28
Old Bean извини за оффтоп. Перейдем в личную переписку если что. Почему здесь а не через личку - мне что-то подсказывает, что вопрос не праздный и тебе был бы интересен тоже.

to lesbeg
Слушай, видно ты глубоко в теме по поводу этих репозиториев. Ткни нормальный ссылок, чтобы без зауми. Так сказать основной популярный документ для быстрого начала использования. Подчеркиваю - без зауми, теорию реляционных баз данных читать заново неохота.

Чего бы хотелось вообще от такой систеы - единый центр так сказать данных (ну я так понимаю github или подобный сервис вполне сойдет). Хочется накатывать малейшие изменения для логгирования. Даже ошибку в строке в одну букву. Чтобы это не переросло в очередной дремучий лес.
Больше скажу - PLC инженеры для систем ПАЗ вообще мечтают о таком (там так сложилось, что АСУ ТП это АСУ ТП, а все веяния программистов проходят мимо по причинам безопасности и так далее)
Если бы система давала четко следующие вещи - цены бы ей не было
1 Всегда версия с датой.
2 Легкость сравнения наглядного текущей версии и предыдущей, вплоть до битовой операции (ну тупо буква в строчке на C изменена).
3 Легкость накатить на новую машину всю струкутру проета.
4 Кто накатил версию
5 Примитивные и не очень макросы для статистики ( ну как объяснить - туоп чтобы я смог сварганить например автоматически формируемую таблицу переменных - до и после, какие теги (переменные)
6 Возможность поднять эту систему вообще изолировано от интернета на простом NAS на каком-нибудь предприятии

Это просто что первое в голову пришло.

Я конечно наглец, но если бы такая система отслеживать могла изменения программы на FBD (графический язык как в каком нибудь labview), так вообще бы цены не было, не все программы пишутся хардкором на C и прочих страшных штуках. Под изменением подразумевается как в Adobe Acrobat File compare. Облачком выделить сдвинутую графически линию.

Хотя мечты это все похоже, слишком узок и специфичен мирок АСУ ТП.
ys1797 Доцент Санкт-Петербург 1K 338
Отв.1097  01 Февр. 18, 18:47

Если бы система давала четко следующие вещи - цены бы ей не былоPavelSaratov, 01 Февр. 18, 17:28

jira Есть некоммерческие аналоги
PavelSaratov Доктор наук Саратов 622 80
Отв.1098  01 Февр. 18, 19:28, через 41 мин
Вы в комплексе прочитайте. В частности АСУ ТП или подобное - большинство вообще не представляет как оно работает. Джира этож по сути багтрекинг как я понимаю. Я могу расписывать долго что нужно, но вот ощущения golden bullet нет. Не то. Интересно было бы , что lesbeg скажет. И еще раз - не думайте что я не понимаю отличия git от github, master от "master из других областей". Просто пока будем говорить казенным языком - потеряется сама суть. Этот горький урок был извлечен из гостов серии 34. Самый я умный был, чего надо выкатить...
ys1797 Доцент Санкт-Петербург 1K 338
Отв.1099  01 Февр. 18, 20:06, через 39 мин
PavelSaratov, Ну все пункты, которые вы перечислили, вроде там есть. Это не вникая в специфики, которые сам себе затачивает по необходимости.
Вообще это "морда" для системы контроля версий git, subversion etc. Тикет система с багтрекером, это вторая часть системы, кому-то она нужна, кому-то нет.
Посмотрите девелоперские странички некоторых крупных открытых проектов на Jira, может уже велосипед давно готов.