Главная › Форумы › Конструкторское бюро › Автоматизация › Автоматика LuckyBox › Управление мощностью ТЭНа
-
АвторСообщения
-
16.08.2019 в 11:08 #45777
Не кратное 50 значение мощности не может появиться преднамеренно. Все значения мощности ТЭНа должны быть кратны 50, так задумано. Если вдруг в EEPROM записано 3240, это мусор, его нужно перезаписать.
Максимально допустимая мощность прошита в программе жёстко (9000 Вт), и при её достижении в процессе установки перескока на минимум не происходит. Как, собственно, и при достижении минимальной мощности (она равна 300 Вт) не происходит перескока на максимум.
16.08.2019 в 12:51 #45783Чет все зацепились за самое не особо принципиальное. Лучше бы сам алгоритм прошерстили. Вдруг что то оптимизировать или улучшить можно. Принцип там простой: замеряем 4 полупериода напряжение, далее полупериод пропускаем для корректного временного переключения канала АЦП, далее 4 полупериода замеряем ток, далее основные рассчеты и так по кругу. При вычислении задержки включения симистора использую нелинейное приближение, может кто то придумает оптимальнее код, без кучи ифов.
Ну и интересно, ни кто еще в живую не повторил?
16.08.2019 в 12:54 #45784Тогда надо в конфиге внести три значения мощности (максимальная, минимальная, пользовательская), где пользовательская равна мощности тэна и не может быть больше максимальной и меньше минимальной.
Так как дельта изменения 50Вт то соответственно при 3кВт 1% составит 30Вт и шаг получится равным 1,66% т.е. получается регулировка по проценту как то не очень смотрится. пойдем дальше по коду, там проверяется 10% мощность, как понимаю, чтобы соответствовать 300Вт, но если мощность тэна больше 3кВт то и 300Вт будут другими процентами (меньшими).
К сожалению не помню по видео Сергея, если подключена автоматика, то хотелось бы иметь возможность ручного изменения мощности (например, запустили ректификацию и видим, что мощности много, нажали на энкодер, уменьшили, дождались результата действия (или при необходимости еще раз изменили мощность) и после этого отправили значение мощности на автоматику, чтобы она считала установленные значения мощности как основные.
В код прошивки регулятора полезу позже.
Да! Я с виду шут, но в душе король, и ни кто как я не может...
16.08.2019 в 12:55 #45785Чет все зацепились за самое не особо принципиальное. Лучше бы сам алгоритм прошерстили. Вдруг что то оптимизировать или улучшить можно. Принцип там простой: замеряем 4 полупериода напряжение, далее полупериод пропускаем для корректного временного переключения канала АЦП, далее 4 полупериода замеряем ток, далее основные рассчеты и так по кругу. При вычислении задержки включения симистора использую нелинейное приближение, может кто то придумает оптимальнее код, без кучи ифов. Ну и интересно, ни кто еще в живую не повторил?
Таки слухи шли что вроде бы что то еще меняться будет. Или я уже совсем потерял связь с реальностью.
Да! Я с виду шут, но в душе король, и ни кто как я не может...
16.08.2019 в 12:59 #45786Чуток по коду
frecuence = 1 / (tmpCalcTMR1 * 0.000001); // считаем герцы для отображения
if (frecuence > 48 && frecuence < 52) frecuence = 50;
else if (frecuence > 58 && frecuence < 62) frecuence = 60;скорее всего else не нужно или так
if (frecuence <=52) frecuence = 50 else frecuence = 60;
и по энкодеру может просто устновить значения 1 для положительного изменения и -1 для отрицательного.
тогда шаг будет решаться в одну строчку
W=w+dw*(значение энкодера) – получаем мощность
и проверка на два крайних значения (чуток можно код сократить)
Да! Я с виду шут, но в душе король, и ни кто как я не может...
16.08.2019 в 13:02 #45787после этого отправили значение мощности на автоматику, чтобы она считала установленные значения мощности как основные.
Для передачи данных в ЛБ надо дорабатывать схему, так как задействована только линия передачи данных на силовой блок.
16.08.2019 в 13:02 #45788Я же вроде написал, что схема принципиально не поменяется, возможно номинал резистора на токовом трансформаторе поменяется и все. Это будет ясно после проверки на максимальной мощности.
16.08.2019 в 13:08 #45789после этого отправили значение мощности на автоматику, чтобы она считала установленные значения мощности как основные.
Для передачи данных в ЛБ надо дорабатывать схему, так как задействована только линия передачи данных на силовой блок.
Таки кто спорит, это моя хотелка.
Да! Я с виду шут, но в душе король, и ни кто как я не может...
16.08.2019 в 13:11 #45790Я же вроде написал, что схема принципиально не поменяется, возможно номинал резистора на токовом трансформаторе поменяется и все. Это будет ясно после проверки на максимальной мощности.
Ну вот зачем вам так портить отдых, отдохнули, люди собрали бы, у в новый бой. Если найду силы доехать до чипа то начну собирать.
Да! Я с виду шут, но в душе король, и ни кто как я не может...
16.08.2019 в 13:13 #45791Чуток по коду frecuence = 1 / (tmpCalcTMR1 * 0.000001); // считаем герцы для отображения if (frecuence > 48 && frecuence < 52) frecuence = 50; else if (frecuence > 58 && frecuence < 62) frecuence = 60; скорее всего else не нужно или так if (frecuence <=52) frecuence = 50 else frecuence = 60
Это больше украшательство, ну и подстраховка, если на заставке нужной частоты не увидели, значит надо детектор нуля проверять. В принципе ифы можно и вообще убрать, просто у меня дома очень нестабильная сеть, мало того что напряжение +/- 20 вольт пляшет, так еще и синусоида искажена до безобразия. В итоге определялось от 49 до 51 Гц.
16.08.2019 в 13:16 #45793Чуток по коду frecuence = 1 / (tmpCalcTMR1 * 0.000001); // считаем герцы для отображения if (frecuence > 48 && frecuence < 52) frecuence = 50; else if (frecuence > 58 && frecuence < 62) frecuence = 60; скорее всего else не нужно или так if (frecuence <=52) frecuence = 50 else frecuence = 60
Это больше украшательство, ну и подстраховка, если на заставке нужной частоты не увидели, значит надо детектор нуля проверять. В принципе ифы можно и вообще убрать, просто у меня дома очень нестабильная сеть, мало того что напряжение +/- 20 вольт пляшет, так еще и синусоида искажена до безобразия. В итоге определялось от 49 до 51 Гц.
В Вашем коде тогда пропадает промежуток от 53 до 57 тогда думаю лучше написать <55 = 50 иначе 60, тогда дырок не будет
Да! Я с виду шут, но в душе король, и ни кто как я не может...
16.08.2019 в 13:16 #45794после этого отправили значение мощности на автоматику, чтобы она считала установленные значения мощности как основные.
Для передачи данных в ЛБ надо дорабатывать схему, так как задействована только линия передачи данных на силовой блок.
А что нам принципиально даст обратная связь? Добавить то не проблема, а вот что потом с этой информацией делать? Просто три блока на PIC контроллере не глючат со связью. Вот и не стал усложнять.
16.08.2019 в 13:20 #45796после этого отправили значение мощности на автоматику, чтобы она считала установленные значения мощности как основные.
Для передачи данных в ЛБ надо дорабатывать схему, так как задействована только линия передачи данных на силовой блок.
А что нам принципиально даст обратная связь? Добавить то не проблема, а вот что потом с этой информацией делать? Просто три блока на PIC контроллере не глючат со связью. Вот и не стал усложнять.
Люди!!! Это моя хотелка, чуток под другую реализацию, в моей хотелке, центральная автоматика может находится где угодно, а не рядом с оборудованием, опс… а вот это уже совсем другая идея.
Да! Я с виду шут, но в душе король, и ни кто как я не может...
16.08.2019 в 13:20 #45797Чуток по коду frecuence = 1 / (tmpCalcTMR1 * 0.000001); // считаем герцы для отображения if (frecuence > 48 && frecuence < 52) frecuence = 50; else if (frecuence > 58 && frecuence < 62) frecuence = 60; скорее всего else не нужно или так if (frecuence <=52) frecuence = 50 else frecuence = 60
Это больше украшательство, ну и подстраховка, если на заставке нужной частоты не увидели, значит надо детектор нуля проверять. В принципе ифы можно и вообще убрать, просто у меня дома очень нестабильная сеть, мало того что напряжение +/- 20 вольт пляшет, так еще и синусоида искажена до безобразия. В итоге определялось от 49 до 51 Гц.
В Вашем коде тогда пропадает промежуток от 53 до 57 тогда думаю лучше написать <55 = 50 или 60, тогда дырок не будет
Так я “дырки” специально оставил, так сразу в глаза бросается отсутствие значения на заставке. Значит что то пошло не так в схеме.
16.08.2019 в 13:32 #45799К сожалению не помню по видео Сергея, если подключена автоматика, то хотелось бы иметь возможность ручного изменения мощности (например, запустили ректификацию и видим, что мощности много, нажали на энкодер, уменьшили, дождались результата действия (или при необходимости еще раз изменили мощность) и после этого отправили значение мощности на автоматику, чтобы она считала установленные значения мощности как основные.
Я пробовал так делать, еще на весеннюю выставку привозил блок именно с таким функционалом. Не понравилось что можно нечаянно ручку крутануть и запороть процесс.
-
АвторСообщения
- Для ответа в этой теме необходимо авторизоваться.