PDA

Просмотр полной версии : счетчик в плк-100



IgorG
15.02.2010, 13:55
добрый день, всем. подскажите, пожалуйста, если кто знает. ситуация следующая. на дискретный вход плк-100 с генератора поступает меандр (период 1,8...30 мс, форма сигнала и период контролируются осциллографом и частотомером, погрешность формирования периода не превышает 0,01%). в плк-100 к данному входу подключен простой счетчик, время фильтрации по данному счетчику установлено равным 0. время цикла плк установлено равным 1 мс, в программе плк организован временной интервал длительностью 30 с. по окончании интервала фиксируется количество импульсов пришедших на вход счетчика. в результате работы программы наблюдается большая (но достаточно стабильная) погрешность подсчета количества импульсов -0,5...-0,6%. после выявления такой погрешности, решил подсчитать количество проходов плк по циклу в течении заданных 30 с. вместо ожидаемого числа 30000, имею 29790...29760 (т.е. -0,7...-0,8%). это такой тактовый генератор в плк, или я чего-то не понимаю и неправильно делаю? и вообще можно ли в принципе построить относительно приличный частотомер на базе плк?

Филоненко Владислав
15.02.2010, 14:35
нельзя, плк для другого сделан. там нет такого точного кварца, как в частотомерах.

IgorG
15.02.2010, 15:08
так мне не нужен образцовый частотомер, мне промышленный частотомер нужен, мне погрешности 0,1...0,2% за глаза хватит. а кварцевый генератор по определению не может погрешность 0,5 % давать. когда говорят о прецизионных кварцевых генераторах с температурной стабилизацией имеют ввиду погрешность в 5-6 знаках после запятой. к тому же, временной интервал 30 с и длительность цикла 1 мс, формируются на резонаторе плк. пусть он будет совсем не точный, но относительное измерение все равно точным будет. здесь как ни крути на 30 с должно быть 30000 1 мс циклов. скорее всего я что-то недопонимаю в принципе работы плк, а вот что именно не пойму. скорее всего цикл получается больше 1 мс, но за счет чего? смотрел время простоя процессора - 645 мкс, ставил длительность цикла 2 мс, 5 мс, результат тот-же. при огромном времени простоя не досчитываюсь 0,7...0,8% проходов по циклу.

Филоненко Владислав
15.02.2010, 16:17
плк никогда не создавался как частотомер. при задании цикла плк гарантируется, что вызываться будет не чаще раза в 1 мс.
нельзя использовать прибор на границе его возможностей.
0,8% - вполне себе погрешность установки периода цикла, т.к. никто не гнался за прецизионной точностью.

Дмитрий Артюховский
15.02.2010, 20:27
1. на большинстве прошивок время фильтрации должно быть установлено -1.
2. не считайте время измерения циклами контроллера, применение модуля Ton поднимет вам точность, а еще лучше читайте аппаратные часы
3. используйте встроенный аппаратный счетчик

Филоненко Владислав
16.02.2010, 10:37
1. для представленного случая и 0 подходит
2. да, только таймером
3. для импульса 1,8 мс достаточно цикла плк.