Страница 429 из 1044 ПерваяПервая ... 329379419427428429430431439479529929 ... ПоследняяПоследняя
Показано с 4,281 по 4,290 из 10436

Тема: ВОПРОС-ОТВЕТ (отвечаем на простые вопросы от новичков)

  1. #4281

    По умолчанию

    Цитата Сообщение от spectrum48k Посмотреть сообщение
    Код:
    FUNCTION_BLOCK SUPER_CTUD
    VAR_INPUT
    	iCntUp : BOOL;	(*Считать вверх*)
    	iCntDn : BOOL;	(*Считать вниз*)
    	iCntRes : BOOL;	(*Сброс на 0*)
    	iCntSP : DWORD;	(*Максимальное значение*)
    END_VAR
    VAR_OUTPUT
    	OutCnt : DWORD;	(*Выходное значение счетчика*)
    	OutAlm : BOOL;	(*Сигнализация достижения максимального значения*)
    END_VAR
    VAR
    	Init: BOOL;
    	CntUpOld :BOOL;
    	CntDnOld : BOOL;
    END_VAR
    
    
    
    IF iCntRes THEN Init := FALSE; END_IF
    
    
    (*INIT*)
    IF NOT Init THEN
    				Init := TRUE;
    				iCntUp := iCntDn := CntUpOld := CntDnOld := OutAlm := FALSE;
    				OutCnt := 0;
    END_IF
    
    
    (*COUNT_UP*)
    IF (CntUp > iCntUpOld) AND (iCntSP > OutCnt) THEN OutCnt := OutCnt + 1; END_IF  (* Здесь будет ошибка *)
    (*COUNT_DOWN*)
    IF (CntDn > iCntDnOld) AND (OutCnt > 0) THEN OutCnt := OutCnt - 1; END_IF (* И здесь тоже *)
    			
    OutAlm := iCntSP > 0 AND OutCnt = iCntSP;
    
    		
    
    END_IF
    
    CntUpOld := iCntUp;
    CntDnOld := iCntDn;
    вроде как-то так. Если не так, подправите. Написал в Notepad.exe, не проверял.
    CntUp, CntDn не объявлены, а объявлены iCntUp и iCntDn.
    Аналогично iCntUpOld, iCntDnOld не объявлены, а объявлены CntUpOld и CntDnOld
    Может правильно будет?

    (*COUNT_UP*)
    IF (iCntUp > CntUpOld) AND (iCntSP > OutCnt) THEN OutCnt := OutCnt + 1; END_IF
    (*COUNT_DOWN*)
    IF (iCntDn > CntDnOld) AND (OutCnt > 0) THEN OutCnt := OutCnt - 1; END_IF

  2. #4282

    По умолчанию

    Pvalp, я исправил опечатку. Спасибо.

  3. #4283

    По умолчанию

    Цитата Сообщение от spectrum48k Посмотреть сообщение
    Pvalp, я исправил опечатку. Спасибо.
    Всегда рад помочь.

  4. #4284
    Пользователь Аватар для Василий Кашуба
    Регистрация
    20.11.2011
    Адрес
    Ставрополь
    Сообщений
    2,492

    По умолчанию

    Цитата Сообщение от Pvalp Посмотреть сообщение
    CntUp, CntDn не объявлены, а объявлены iCntUp и iCntDn.
    Аналогично iCntUpOld, iCntDnOld не объявлены, а объявлены CntUpOld и CntDnOld
    Может правильно будет?

    (*COUNT_UP*)
    IF (iCntUp > CntUpOld) AND (iCntSP > OutCnt) THEN OutCnt := OutCnt + 1; END_IF
    (*COUNT_DOWN*)
    IF (iCntDn > CntDnOld) AND (OutCnt > 0) THEN OutCnt := OutCnt - 1; END_IF
    Как у вас у эСТетов всё сложно, то ли дело у нас, нарисовал картинку и всё работает.
    Вложение 20049

  5. #4285
    Пользователь Аватар для capzap
    Регистрация
    25.02.2011
    Адрес
    Киров
    Сообщений
    10,249

    По умолчанию

    Цитата Сообщение от Василий Кашуба Посмотреть сообщение
    Как у вас у эСТетов всё сложно, то ли дело у нас, нарисовал картинку и всё работает.
    Вложение 20049
    покажите вызов макроса, вызввающий сам себя
    Bad programmers worry about the code. Good programmers worry about data structures and their relationships

    среди успешных людей я не встречала нытиков
    Барбара Коркоран

  6. #4286
    Пользователь Аватар для Василий Кашуба
    Регистрация
    20.11.2011
    Адрес
    Ставрополь
    Сообщений
    2,492

    По умолчанию

    Цитата Сообщение от capzap Посмотреть сообщение
    покажите вызов макроса, вызввающий сам себя
    С такими задачами пока не сталкивался.

  7. #4287

    По умолчанию

    Подскажите, плиз, куда и что в CoDeSyS 2x надо написать, чтоб законнектиться с ПЛК по Ethernetу. По СОМ - законнектился. По Ethernet - законнектился лишь в EasyWorksPLC без проблем. Поменял ИП и шлюз. Вот так теперь видится:
    PLC model MODEL PLC 110-30
    Binary VERSION 2.14.0
    Need Target version 2.10
    Compiled: 14:35:31 Apr 28 2011
    MAC 6A:....
    IP 192.168.1.99
    GATE 192.168.1.1
    MASK 255.255.255.0
    PIC upper version is 15
    Licence unlimited
    Осталось дело за малым - что-то настроить в кодесисе. В букваре по ПЛК про Ethernet-подключение почти что ничего не написано.
    Или может, я не так присоединился: комп и плк воткнуты в один свич. Свич воткнут в роутер. У роутера адрес 192.168.1.1. У компа 192.168.1.2. И то, и другое пробовал подсунуть в настройки плк в качестве адреса шлюза. Всеравно не коннектит.

  8. #4288
    Пользователь Аватар для capzap
    Регистрация
    25.02.2011
    Адрес
    Киров
    Сообщений
    10,249

    По умолчанию

    Цитата Сообщение от murzik Посмотреть сообщение
    Подскажите, плиз, куда и что в CoDeSyS 2x надо написать, чтоб законнектиться с ПЛК по Ethernetу. По СОМ - законнектился. По Ethernet - законнектился лишь в EasyWorksPLC без проблем. Поменял ИП и шлюз. Вот так теперь видится:
    PLC model MODEL PLC 110-30
    Binary VERSION 2.14.0
    Need Target version 2.10
    Compiled: 14:35:31 Apr 28 2011
    MAC 6A:....
    IP 192.168.1.99
    GATE 192.168.1.1
    MASK 255.255.255.0
    PIC upper version is 15
    Licence unlimited
    Осталось дело за малым - что-то настроить в кодесисе. В букваре по ПЛК про Ethernet-подключение почти что ничего не написано.
    Или может, я не так присоединился: комп и плк воткнуты в один свич. Свич воткнут в роутер. У роутера адрес 192.168.1.1. У компа 192.168.1.2. И то, и другое пробовал подсунуть в настройки плк в качестве адреса шлюза. Всеравно не коннектит.
    а там элементарный пинг не пробовали послать на плк?
    Bad programmers worry about the code. Good programmers worry about data structures and their relationships

    среди успешных людей я не встречала нытиков
    Барбара Коркоран

  9. #4289

    По умолчанию

    вот, пожалуйста:
    C:\Users\se>ping 192.168.1.99

    Обмен пакетами с 192.168.1.99 по с 32 байтами данных:
    Ответ от 192.168.1.99: число байт=32 время=80мс TTL=128
    Ответ от 192.168.1.99: число байт=32 время=59мс TTL=128
    Ответ от 192.168.1.99: число байт=32 время=89мс TTL=128
    Ответ от 192.168.1.99: число байт=32 время=71мс TTL=128

    Статистика Ping для 192.168.1.99:
    Пакетов: отправлено = 4, получено = 4, потеряно = 0
    (0% потерь)
    Приблизительное время приема-передачи в мс:
    Минимальное = 59мсек, Максимальное = 89 мсек, Среднее = 74 мсек

  10. #4290

    По умолчанию

    сейчас шлюз стоИт 192.168.1.2 - адрес компа

Страница 429 из 1044 ПерваяПервая ... 329379419427428429430431439479529929 ... ПоследняяПоследняя

Метки этой темы

Ваши права

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