Да, я сталкивался уже пару раз с обнулением энергонезависимых переменных.
Микро предыстория. мне заказчик иногда заказывает типовые шкафы где в ПО есть весь возможный функционал. я собираю и отправляю ему шкафы. прошиваю "рыбу" с условно универсальными настройками и проверяю на перед отправкой, но исходники ПО есть и у заказчика (вдруг я, гад такой, захочу обогатиться и не буду больше прошивать щиты)
просто записать в ПЗУ итоговые уставки на объекте (поправить данные в свойствах макроса) вообще некому. на объект со станком выезжает только технолог. он умеет только тыкать в экран и много уставок и настроек зависят уже от процесса пусконаладки конкретного станка. это мог бы делать я, но я понимаю, что заказчику это не выгодно — привязывать себя к моей персоне. они должны получить итоговое ПО, которое они могут прошить без моего участия (например щиты сами собирать научатся) да и я сам не хочу так действовать. потому и ищу пути решения проблемы за пределами корректировки программы. может, когда ПО будет полностью допилено вообще создать мастер тиражирования и им даже лоджик не будет нужен.
а контрольное число (переписать контрольную из текущей) может любой человек. то есть наладчики все сделали зашли и переписали текущую контрольную сумму в соответствующее поле ввода (это контрольное число) и включили защиту. далее происходит сбой или рассчитанной контрольной суммы или контрольного числа, выдается ошибка станка, пользователи в режиме просмотра видят контрольное число и контрольную сумму. фотографируют и отправляют на завод. те уже вполне могут идентифицировать или это сбой контрольного числа или сбой контрольной суммы, а дальше сами решают что делать или выезжать на объект или продиктовать исходные уставки.
вот и вся логика. если сбой произойдет более глобальный, то это будет «сбой программы лоджика» и по любому надо перепрошивать.
может часть текста и сумбурная, но я ее скопировал из переписке по почте с одним из коллег, но столько букв писать не хочу еще раз.
заказчику сейчас все нравится, но тот факт что я уже 2 или 3 раза столкнулся с обнулением переменных, причем первые два раза я думал, что из клауда могло что-то прилететь, то последний раз сбой произошел в энергонезависимой переменной которая была только в программе и наружу никак не вынесена. при этом проект вообще пустой как горшок у ослика ИА. погда произошел сбой я подключился в онлайне и был крайне удивлен тем, что в переменной красовался ноль.





