Показано с 1 по 10 из 10

Тема: Подключение энкодера

  1. #1
    Пользователь
    Регистрация
    27.10.2019
    Адрес
    Астрахань
    Сообщений
    71

    По умолчанию Подключение энкодера

    Друзья ! в кодесис 3.5 SP 13 для ПЛК210-01 в LeftSide -01 (Конфигурация параметры ) есть AB ,ABZ энкодеры , а для ПЛК210-12 в LeftSide -01 Кодесис 3.5 SP17 нет....
    ЧТО делать?

  2. #2
    Супер Модератор Аватар для Евгений Кислов
    Регистрация
    27.01.2015
    Адрес
    Москва
    Сообщений
    12,286

    По умолчанию

    Цитата Сообщение от wallera Посмотреть сообщение
    Друзья ! в кодесис 3.5 SP 13 для ПЛК210-01 в LeftSide -01 (Конфигурация параметры ) есть AB ,ABZ энкодеры , а для ПЛК210-12 в LeftSide -01 Кодесис 3.5 SP17 нет....
    ЧТО делать?
    Добрый день.
    В данный момент ПЛК210-1x не поддерживают обработку сигналов энкодеров.
    Так что пока, к сожалению, с этим ничего не поделать.
    Мы планируем поддержать этот функционал в одной из следующих прошивок.

  3. #3
    Пользователь
    Регистрация
    27.10.2019
    Адрес
    Астрахань
    Сообщений
    71

    По умолчанию

    Спасибо за ответ Евгений , будем ждать данного функционала, ужо больно сии ПЛК-мне нравятся...

  4. #4
    Пользователь
    Регистрация
    27.10.2019
    Адрес
    Астрахань
    Сообщений
    71

    По умолчанию

    Евгений, а не дожидаясь данного функционала возможно решить задачу с подключением ABZ-энкодера , каким либо способом ?
    Куда копать?

  5. #5

    По умолчанию

    Цитата Сообщение от wallera Посмотреть сообщение
    Евгений, а не дожидаясь данного функционала возможно решить задачу с подключением ABZ-энкодера , каким либо способом ?
    Куда копать?
    Я пробовал такое на 210-02, программно считал. Но к сожалению там даже FDI входы обрабатываются исходя из минимального времени цикла программы, а не аппаратных возможностей ПЛК, поэтому выше определённой скорости пойдут ошибки, но если для медленного процесса, то вполне нормально работает.

  6. #6
    Пользователь
    Регистрация
    27.10.2019
    Адрес
    Астрахань
    Сообщений
    71

    По умолчанию

    Цитата Сообщение от МихаилГл Посмотреть сообщение
    Я пробовал такое на 210-02, программно считал. Но к сожалению там даже FDI входы обрабатываются исходя из минимального времени цикла программы, а не аппаратных возможностей ПЛК, поэтому выше определённой скорости пойдут ошибки, но если для медленного процесса, то вполне нормально работает.
    примерчиком не поделитесь...

  7. #7

    По умолчанию

    Завтра скину.

  8. #8
    Пользователь
    Регистрация
    27.10.2019
    Адрес
    Астрахань
    Сообщений
    71

    По умолчанию

    Цитата Сообщение от МихаилГл Посмотреть сообщение
    Завтра скину.
    Спасибо! Огромное.

  9. #9

    По умолчанию

    Цитата Сообщение от wallera Посмотреть сообщение
    ...
    Извиняюсь за задержку...
    Код:
    PROGRAM POU_ENCODER
    VAR
    	//Энкодер направления вращения
    	a: BOOL;			//Вход датчика А
    	b: BOOL;			//Вход датчика В
    	a1: BOOL;			//Условие 1го положения
    	a2: BOOL;			//Условие 2го положения
    	a3: BOOL;			//Условие 3го положения
    	a4: BOOL;			//Условие 4го положения
    	//Энкодер направления вращения
    	//Направление вращения
    	c0: BOOL;			//Вращение вперед
    	d0: BOOL;			//Вращение назад
    	//Направление вращения
    	zIMP1: R_TRIG;		//Фронт импульса датчика А
    	zIMP2: R_TRIG;		//Фронт импульса датчика В
    	zIMP3: F_TRIG;		//Спад импульса датчика А
    	zIMP4: F_TRIG;		//Спад импульса датчика В
    	zIMP5: R_TRIG;		//Фронт импульса для "Вращение вперед"
    	zIMP6: R_TRIG;		//Фронт импульса для "Вращение назад"
    	//Определение импульсов сигнала
    	i1: DINT;			//Количество импульсов сигнала датчика А
    	i2: DINT;			//Количество импульсов сигнала датчика В
    	iF1: DINT;			//Количество накопленных импульсов сигнала датчика А для "Вращение вперед"
    	iF2: DINT;			//Количество накопленных импульсов сигнала датчика В для "Вращение вперед"
    	iR1: DINT;			//Количество накопленных импульсов сигнала датчика А для "Вращение назад"
    	iR2: DINT;			//Количество накопленных импульсов сигнала датчика В для "Вращение назад"
    	//Определение импульсов сигнала
    	RESET_BIT: BOOL;
    END_VAR
    VAR_INPUT
    	iA1: BOOL;			//Входной импульс основного датчика
    	iA2: BOOL;			//Входной импульс вспомогательного датчика
    END_VAR
    VAR_OUTPUT
    	oC0: BOOL;			//Направление вращения - Вперед
    	oD0: BOOL;			//Направление вращения - Назад
    	oN1: DINT;			//Количество импульсов датчика А
    	oN2: DINT;			//Количество импульсов датчика В
    END_VAR
    Код:
    //iA1 = 0/1			- Входной импульс основного датчика
    a := iA1;
    //iA2 = 0/1			- Входной импульс вспомогательного датчика
    b := iA2;
    //Энкодер направления вращения
    IF     a AND NOT b THEN a1 := 1; END_IF
    IF     a AND     b THEN a2 := 1; END_IF
    IF NOT a AND     b THEN a3 := 1; END_IF
    IF NOT a AND NOT b THEN a4 := 1; END_IF
    IF    a1 AND a2 AND     a AND     b THEN d0 := a3 := a4 := 0; c0 := 1;
    ELSIF a2 AND a3 AND NOT a AND     b THEN d0 := a4 := a1 := 0; c0 := 1;
    ELSIF a3 AND a4 AND NOT a AND NOT b THEN d0 := a1 := a2 := 0; c0 := 1;
    ELSIF a4 AND a1 AND     a AND NOT b THEN d0 := a2 := a3 := 0; c0 := 1;
    ELSIF a1 AND a2 AND     a AND NOT b THEN c0 := a3 := a4 := 0; d0 := 1;
    ELSIF a2 AND a3 AND     a AND     b THEN c0 := a4 := a1 := 0; d0 := 1;
    ELSIF a3 AND a4 AND NOT a AND     b THEN c0 := a1 := a2 := 0; d0 := 1;
    ELSIF a4 AND a1 AND NOT a AND NOT b THEN c0 := a2 := a3 := 0; d0 := 1;
    END_IF
    //Энкодер направления вращения
    //Направление вращения
    oC0 := c0;
    oD0 := d0;
    //Направление вращения
    zIMP1(CLK := a);
    zIMP2(CLK := b);
    zIMP3(CLK := a);
    zIMP4(CLK := b);
    zIMP5(CLK := c0);
    zIMP6(CLK := d0);
    //Определение импульсов сигнала
    IF c0 AND zIMP1.Q THEN i1 := i1 + 1; END_IF
    IF d0 AND zIMP3.Q THEN i1 := i1 - 1; END_IF
    IF c0 AND zIMP2.Q THEN i2 := i2 + 1; END_IF
    IF d0 AND zIMP4.Q THEN i2 := i2 - 1; END_IF
    
    IF c0 AND zIMP1.Q THEN iF1 := iF1 + 1; END_IF
    IF zIMP5.Q AND zIMP3.Q THEN iF1 := iF1 - 1; END_IF
    IF c0 AND zIMP2.Q THEN iF2 := iF2 + 1; END_IF
    IF zIMP5.Q AND zIMP4.Q THEN iF2 := iF2 - 1; END_IF
    
    IF zIMP6.Q AND zIMP1.Q THEN iR1 := iR1 + 1; END_IF
    IF d0 AND zIMP3.Q THEN iR1 := iR1 - 1; END_IF
    IF zIMP6.Q AND zIMP2.Q THEN iR2 := iR2 + 1; END_IF
    IF d0 AND zIMP4.Q THEN iR2 := iR2 - 1; END_IF
    //Определение импульсов сигнала
    //Количество импульсов
    oN1 := i1;
    oN2 := i2;
    //Количество импульсов
    IF RESET_BIT THEN
    	i1 := i2 := iF1 := iF2 := iR1 := iR2 := 0;
    	RESET_BIT := a1 := a2 := a3 := a4 := c0 := d0 := 0;
    END_IF

  10. #10
    Пользователь
    Регистрация
    27.10.2019
    Адрес
    Астрахань
    Сообщений
    71

    По умолчанию

    Спасибо Михаил! Командировка...
    Последний раз редактировалось wallera; 12.05.2024 в 06:47.

Похожие темы

  1. Подключение энкодера - загадка?
    от clockwise в разделе ПЛК1хх
    Ответов: 9
    Последнее сообщение: 22.11.2013, 08:15
  2. подключение энкодера
    от Андрей Славин в разделе Помощь Разработчикам
    Ответов: 0
    Последнее сообщение: 08.06.2010, 17:31
  3. подключение реверсивного энкодера к си8
    от rovki в разделе Подбор Оборудования
    Ответов: 0
    Последнее сообщение: 27.02.2010, 20:27
  4. подключение абсолютного энкодера к плк
    от Александр Григорьев в разделе ПЛК1хх
    Ответов: 34
    Последнее сообщение: 19.06.2009, 18:37
  5. Подключение энкодера - что не так?
    от clockwise в разделе Эксплуатация
    Ответов: 9
    Последнее сообщение: 17.07.2008, 20:43

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •