Просмотр полной версии : Вопрос по приёму и обработки аналоговых сигналов
alek4322
05.03.2012, 22:40
ПЛК 150 А-М Задача состоит в том чтобы
1) по напряжению и току измерить мощность в Квт/ч в месяц работы дизельной электростанции а также общее время работы
2) составить отсчёт и передать его на (уже специально созданный) сайт
К сожалению я новичёк в программировании ПЛК и незнаю как принять и обработать аналоговый сигнал если можно прошу пояснить хотябы алгоритм действий если возможно простенький пример с описанием и ещё я слабо владею языками LD и FBD интересно возможно ли осуществить пункт 1) задачи в этих языках
измерить мощность в Квт/чкВт/ч это не мощность.
Здесь необходим измеритель мощности либо с аналоговым выходом, либо с интерфейсом RS-485 и поддержкой протокола Modbus RTU/ASCII. Настроив и подключив такой прибор, пишете программу, которая считывает значения соответственно с аналогового входа или по цифровому интерфейсу. Собственно, писать там почти ничего и не надо — нужно лишь задать переменные в конфигурации ПЛК. Вот эти переменные и отправляете на сайт (что такое сайт в данном случае?). Как новичку, возможно, вам будет проще периодически вытягивать данные из ПЛК, нежели отправлять их с ПЛК на сайт.
Николаев Андрей
06.03.2012, 10:17
1. Смотрим Руководство по программированию ПЛК (идет в комплекте на диске к ПЛК).
2. Описывать алгоритмы вычисления мощности и пр. вычислений легче делать на языке ST power:=i*u*cos(fi);
alek4322
06.03.2012, 21:48
Большое спасибо за то что откликнулись, возможно ли напрямую подключить аналоговый сигнал с шунта или с трансформатора тока к ПЛК и каким нибудь образом обработать сигнал, например как это делает АЦП, я если честно, не пойму как работать с аналоговыми сигналами в CoDeSys, то что в конфигураторе ПЛК нужно привязать переменную с портом аналогового входа я догадался, но не пойму что делать с ней например с LD или FBD, а ST я пока только начал осваивать
Николаев Андрей
06.03.2012, 22:11
Там где прямоугольник при отключенной связи два раза щелкаете, и пишете имя переменной.
В программе уже просто с именем работаете. Любые операции.
alek4322
07.03.2012, 18:23
:confused: Большое спасибо, но это я понял, я не пойму как дальше обрабатывается аналоговый сигнал, какие операции можно с ним делать например в языке LD или FBD, например я хочу знать значение аналогового сигнала с температурного датчика в любой момент времени или значение напряжения ведь оно может быть разным, а не только 1 или 0, может датчик показывать 10 градусов а может 11 и мне нужно допустим в соответствии с этими значениями осуществлять какую то операцию например чуть больше или чуть меньше открыть трёхходовой клапан по теплу. Вы извините меня может это просто, а я не знаю, но я только начинающий, а литературы очень мало особенно по работе с аналоговыми сигналами, везде всё заканчивается тем нужно задать имя переменной аналоговому порту и потом работать с ним и всё, а у меня как раз с этим загвоздка, помогите если не сложно, или подскажите литературу, если можно лёгенький пример на LD или FBD.
аналоговый сигнал имеет тип REAL, про него и ищите информацию на форуме, в примерах и т.д.
Powered by vBulletin® Version 4.2.3 Copyright © 2025 vBulletin Solutions, Inc. All rights reserved. Перевод: zCarot