PDA

Просмотр полной версии : получение вменяемого результата от датчиков



AntoNechayuk
18.01.2010, 11:30
есть вопрос - каким образом получить/преобразовать сигнал от датчика (0-5в) в переменную, а также опрашивать вход плк чтобы получать ее в реальном времени и фиксировать в таблицу?

(плк 150-220-ум)

Николаев Андрей
18.01.2010, 11:55
Последнее китайское предупреждение - пожалейте свое время и время пользователей - читайте документацию. В частности Руководство пользователя по PLC Configuration.
В конфигурации ПЛК в канале отвечающем за измеренное значение в аналоговом входе кликаете на AT и задаете имя переменной.
Чтобы получить метку времени - используете библиотеку SisLibTime.lib C помощью неё получаете реальное время в контроллере и заносите в свой массив.

AntoNechayuk
18.01.2010, 12:00
читайте документацию

этим и занимаюсь... только если сигнал 0-5в... будет работать правильно?

Николаев Андрей
18.01.2010, 12:04
будет, но мерить будет в половине диапазона 0-10в

AntoNechayuk
18.01.2010, 12:09
ладно - удаляйте тему.... что чделать если я пока баран в этом деле...... ведь реальных рабочих примеров с описаниями маловато, чтобы шишки не набивать....... а так боюсь спалить плк - вот и спрашиваю элементарщину.....

меня самого достают вопросы пользователей компов типа :как копировать папку и т.п..... так что понимаю - не судите строго! :)

AntoNechayuk
18.01.2010, 13:11
а если мне необходимо опрашивать аналоговый вход не менее чем 15 раз в секунду - это можно реализовать..... а то 2 раза в секунду - маловато....

AntoNechayuk
18.01.2010, 15:35
могу ли я таррировать аналоговый сигнал со скады? , т.е. иметь доступ к элементам конфигуратора плк

DARNER
18.01.2010, 16:13
а если мне необходимо опрашивать аналоговый вход не менее чем 15 раз в секунду - это можно реализовать..... а то 2 раза в секунду - маловато....

а смысл ??? посмотрите минимальное время цикла работы АЦП....т.е. "время измерения" аналогового входа.

DARNER
18.01.2010, 16:14
могу ли я таррировать аналоговый сигнал со скады? , т.е. иметь доступ к элементам конфигуратора плк

может я тупой...но вопрос я ваш не понял...:)
"таррировать аналоговый сигнал" - это что имеется ввиду?

AntoNechayuk
18.01.2010, 16:53
"таррировать аналоговый сигнал" - это что имеется ввиду?
это значит корректировать его чтобы получить то что нужно. в конфигураторе есть параметры входа такие как First point, Delta и т.п.

Так вот и спрашиваю - могу я изменять эти параметры по какому-то адресу????

DARNER
18.01.2010, 17:14
насколько я знаю такое невозможно средствами исполняемой программы..

Николаев Андрей
18.01.2010, 21:00
1. чаще, чем раз в 0,5с не получится. нужно чаще - можно использовать модуль мв110-220.8ас
2. в области конфигурирования из программы изменять нельзя. но кто мешает в области конфигурирования привести к 0-100 (условных едениц), а уже в пользовательской программе тарировать?

Sergey666
18.01.2010, 23:49
могу ли я таррировать аналоговый сигнал со скады? , т.е. иметь доступ к элементам конфигуратора плк

Со стороны верхнего уровня вы можете "тарировать" переменные в программе ПЛК ,соотв как пропишите.
У вас входной аналоговый сигнал в конфигураторе -число формата REAL c
AT адресом.
Объявляете глобальную переменную REAL ,(соотв как нибудь ее обозвав)и привязываете ее к переменной в конфигураторе AT адресом.
Затем в программе с этой глобальной переменной делайте что хотите.

AntoNechayuk
19.01.2010, 09:20
можно использовать модуль мв110-220.8ас
да, но он аж на 8 входов, а мне на 2 максимум надо.... может есть еще способы?

Николаев Андрей
19.01.2010, 09:39
да, но он аж на 8 входов, а мне на 2 максимум надо.... может есть еще способы?

Ну попробуйте поискать двухканальник дешевле... :)

AntoNechayuk
19.01.2010, 09:52
но кто мешает в области конфигурирования привести к 0-100 (условных едениц), а уже в пользовательской программе тарировать?

не совсем понятно что значит "привести к 0-100(условных единиц"...

Николаев Андрей
19.01.2010, 12:03
читайте документацию пожалуйста. все, что я вам рассказываю там есть, практически дословно.
универсальный аналоговый сигнал в конфигурации плк можно привести к условным единицам (физическим). для этого есть 2 параметра нижнее и верхнее значение. задайте в нижнем 0, а в верхнем 100.
и уже в программе значение сигнала 0-100 приводите к нужному вам виду.

DARNER
19.01.2010, 15:17
читайте документацию пожалуйста. ...

+1
и конечно же по-больше практики...;)

AntoNechayuk
19.01.2010, 15:23
и конечно же по-больше практики...

практики как раз нету...( - поэтому такой геммор и идет... но благодаря Вам всем все пока получается :)

сейчас подключаю энкодер.. На складе нашел один (инкрементный)... теперь ломаю голову как подключить его правильно, а потом получить то заветное "слово" с него. И больше всего смущает канал Z ... может кто знает как с ним возиться?:confused:

Николаев Андрей
19.01.2010, 16:02
с Z энкодером у вас дружбы не получится...

AntoNechayuk
19.01.2010, 16:38
с Z энкодером у вас дружбы не получится...

наверное - пробовал подключить к клемам 1 и 2 только выход "А" и "В" соответственно - получал только 1 при включении плк и все.... никаких изменений.

Соответственно хотел бы уточнить: 1-я клемма соответствует в First Input 0, a 2-я клемма "1"?

Филоненко Владислав
19.01.2010, 16:44
не можете. только в конфигурации.

Однако, сделать расчет полинома 2-й степени в самой программе, а коэф. вывести в slave - это просто, быстро и эффективно.

AntoNechayuk
20.01.2010, 14:53
еще способ редактировать, или таррировать значение можно через программу EasyWork OWEN! быстрее и удобнее, хотя и не то что хотел.

AntoNechayuk
20.01.2010, 15:07
:eek: Помогите подключить энкодер! (спрашиваю тут, ибо новую тему создавать, как я понял, нельзя категорически........ а работать-то надо.)

Вопрос, собственно, не только в подключении:)
- а какие энкодеры можно подключать и какие нельзя
- как правильно подключить (т.е. какие провода и куда их?)
- как получить обработанный сигнал в переменную ПЛК?


пока все мои пробы увенчались только ошибками.... и, думаю сам не смогу.:(

Николаев Андрей
21.01.2010, 10:19
В конфигурации ПЛК добавляете подмодуль энкодера, и настраиваете его (указываете к каким входам подключен АБ энкодер, тип энкодера и шкала).
В канале подмодуля получаете значение с него.
Более подробно о каждом параметре в документации.

AntoNechayuk
21.01.2010, 11:40
Все правильно... но мне так никто и не сказал что фильтрацию на входах отключить нужно.... теперь работает! Не знаю насколько точно - но вменяемый сигнал получен...:) :p :D :rolleyes:


Всем огромное спасибо.!

Осталось реализовать управление двигателем и свести всё до кучи...:cool:

Филоненко Владислав
21.01.2010, 14:31
Фильтрацию на входах надо настраивать в соответствии с характеристиками источника сигнала. У всех разные энкодеры и в некотроых фильтрация очень даже нужна.

Николаев Андрей
21.01.2010, 17:24
Не забудьте проектом потом поделиться, и описанием ;)