Страница 9 из 39 ПерваяПервая ... 789101119 ... ПоследняяПоследняя
Показано с 81 по 90 из 384

Тема: Codesys v3 + Raspberry Pi

  1. #81
    Пользователь Аватар для NightBeer
    Регистрация
    23.01.2014
    Адрес
    Белгород
    Сообщений
    31

    По умолчанию

    Спасибо! Как раз такой и заказал завтра у меня будет малинка 2, но usb-rs485 и RTC идти будут долго. Напишу как всё прошло, думаю перебросить проекты с СПК107. Жаль что у Овена нет аналогов.

  2. #82

    По умолчанию

    Всем привет. Человек постами выше давал ссылку http://www.ebay.com/itm/400503978923 - часы реального времени + память для retain. Вопрос, кто-нибудь решал проблему сохранения значения в память 24ххх?

  3. #83
    Пользователь Аватар для murdemon
    Регистрация
    03.02.2014
    Адрес
    Санкт-Петербург
    Сообщений
    844

    По умолчанию

    retain можно и на флешку сохранять в виде файла и при загрузки подгружать обратно (а в программе просто VAR RETAIN использовать и все)

    PROGRAM RetainManager
    VAR_INPUT
    RetainFilePathName : STRING := '/root/Retain';
    SaveFilterTime : TIME := T#5S;
    ForceSave : BOOL;
    END_VAR
    VAR
    Init: BOOL;
    pRetainFilePathName : POINTER TO STRING;
    pCurrentApp : POINTER TO APPLICATION;
    RetainAreaSize: __XWORD;
    pRetainArea: POINTER TO BYTE;
    dwCRCSave: DWORD;
    dwCRC: DWORD;
    TOF1 : TOF := (PT := SaveFilterTime);
    R_TRIG1: R_TRIG;
    END_VAR
    VAR_OUTPUT
    RTSIECResult: cmpapp.RTS_IEC_RESULT;
    AttemptSaveCounter: INT;
    END_VAR

    IF NOT Init THEN
    pCurrentApp := AppGetCurrent(ADR(RTSIECResult));
    IF RTSIECResult<>0 THEN RETURN; END_IF
    RetainAreaSize := AppGetAreaSize(pApp:= pCurrentApp, uiType:= DA_RETAIN, pResult:= ADR(RTSIECResult));
    IF RTSIECResult<>0 THEN RETURN; END_IF
    pRetainArea := AppGetAreaAddress(pApp:= pCurrentApp, uiType:= DA_RETAIN, pResult:= ADR(RTSIECResult));
    IF RTSIECResult<>0 THEN RETURN; END_IF
    IF LEN(RetainFilePathName) <> 0 THEN
    pRetainFilePathName := ADR(RetainFilePathName);
    ELSE
    pRetainFilePathName := ADR(pCurrentApp^.szName);
    END_IF
    RTSIECResult := AppRestoreRetainsFromFile(pCurrentApp, pRetainFilePathName^);
    CASE RTSIECResult OF
    0: // #define ERR_OK 0x0000
    16#1E: // #define ERR_SIGNATURE_MISMATCH 0x001E /* Signature mismatch of an api function */
    16#32: // #define ERR_FILE_ERROR 0x0032 /* File error. e.g. cannot open a file for writing because it could be write protected */
    ELSE RETURN;
    END_CASE
    dwCRCSave := CRC32Finish(ulCRC:= CRC32Update(ulCRC:= CRC32Init(), pData:= pRetainArea, ulSize:= RetainAreaSize));
    Init := TRUE;
    END_IF

    R_TRIG1(CLK := ForceSave);

    dwCRC := CRC32Finish(ulCRC:= CRC32Update(ulCRC:= CRC32Init(), pData:= pRetainArea, ulSize:= RetainAreaSize));

    IF dwCRC <> dwCRCSave OR R_TRIG1.Q THEN
    IF NOT TOF1.Q OR R_TRIG1.Q THEN
    RTSIECResult := AppStoreRetainsInFile(pCurrentApp, pRetainFilePathName^); // записасать в файл
    IF RTSIECResult = 0 THEN
    dwCRCSave := dwCRC;
    END_IF
    AttemptSaveCounter := AttemptSaveCounter + 1;
    TOF1(IN := TRUE);
    END_IF
    END_IF

    IF TOF1.Q THEN
    TOF1(IN := FALSE);
    END_IF

    http://forum.codesys.com/viewtopic.p...=5722&start=15
    Последний раз редактировалось murdemon; 24.12.2015 в 13:28.
    Dmitriy Murashov
    SPS Software Engineer Automation Engineering RUS

  4. #84

    По умолчанию

    Спасибо за совет. А вы не пробовали с внешней памятью работать? Кодесися поддерживает? В Линухе то я приконектился к чипу все хорошо, вижу адрес, читаю - пишу. А вот в кодесис вопрос.

  5. #85
    Пользователь Аватар для murdemon
    Регистрация
    03.02.2014
    Адрес
    Санкт-Петербург
    Сообщений
    844

    По умолчанию

    можно сделать скрипт на bash и вызывать его из кодезиса с несколькими параметрами.. или просто писать в именованный канал как /dev/mymemory как в файл (лучше второй вариант)
    Dmitriy Murashov
    SPS Software Engineer Automation Engineering RUS

  6. #86

    По умолчанию

    Добрый день!
    Осваиваю Codesys + Raspberry Pi 2 (далее RPi). Возникла проблема на этапе развертывания на RPi Modbus RTU Master/Slave. Насколько я понимаю необходимо сделать следующие вещи:

    1. Подключить преобразователь USB<->RS к RPi, и через dmesg посмотреть как он стал доступен в системе. В моём случае это /dev/ttyUSB0.
    (dmesg выдал: usb 1-1.4: pl2303 converter now attached to ttyUSB0)
    2. На RPi в файл /etc/CODESYSControl.cfg добавить:
    [SysCom]
    Linux.DeviceFile=/dev/ttyUSB
    portnum:=COM.SysCom.SYS_COMPORT1
    3. Перезагрузить RPi
    4. В проект CODESYS добавляем "Modbus COM", а к "Modbus COM" добавляем либо "Modbus Serial Device" (если хотим Slave), либо "Modbus Master" (если хотим Master).
    5. Настраиваем всё, что добавили.
    6. Собираем проект и отправляем его в RPi

    В качестве базового проекта я использовал Onewire (он идёт в комплекте вместе с пакетом для работы с RPi). Всё что касается onewire в нём отлично работает: датчик температуры опрашивается и через web-интерфейс можно данные с него посмотреть.
    В моём случае (см. рис.), почему-то, при просмотре в online режиме напротив modbus устройства вместо зелёных стрелок, которые говорят о том, что всё ОК, стоят треугольники с красной рамкой, а в статусе устройства указано:
    PCI-BUS: No driver found
    SerialPort: No driver found
    codesys_modbus.jpg

    Может ли это быть связано с тем, что я использую пока только двух часовую демо версию (не успел пока купить полную)? Но, насколько я понимаю, в демо ограничение связано только со временем работы, а функционал полный.
    Цитата с сайта: Without purchasing a license (just download) the CODESYS Control for Raspberry Pi runs for two hours without functional limitations and shuts down automatically (demo).
    Или всё дело в том, что я каким-то образом не подключил драйвера?

    Проект приложил к письму.

    Буду очень благодарен за помощь!
    Вложения Вложения

  7. #87
    Пользователь Аватар для murdemon
    Регистрация
    03.02.2014
    Адрес
    Санкт-Петербург
    Сообщений
    844

    По умолчанию

    Попробуй компорт в кодезисе с 1 на 4, 3, 2 поменять - он иногда их по разному подхватывает.
    Dmitriy Murashov
    SPS Software Engineer Automation Engineering RUS

  8. #88

    По умолчанию

    Спасибо за советы!
    Попробовал, но как-то не завелось)
    Изучение логов дало следующий результат:
    - в файле /tmp/codesyscontrol.log есть следующие записи:
    1452097627: Cmp=OnlineLicenseManager, Class=4, Error=0, Info=0, pszInfo=**** License for IoDrvModbusSerial not installed.
    1452097627: Cmp=CmpIoMgr, Class=4, Error=1, Info=1, pszInfo=**** Update configuration failed from driver <iodriver>IoDrvModbusTCPSlave</iodriver>
    (полный лог прикреплен к сообщению)
    - в логах CODESYS та же информация:
    pic.jpg

    Я так понимаю, мои неудачи в работе с Modbus связанны именно с этим. Исправится ли эта ситуация, после покупки лицензии (я пока работаю в демо режиме)?
    Можно ли в демо режиме как-то загрузить эти драйвера? (CODESYS вроде как полнофункциональный должен быть даже в демо режиме)?

    Спасибо!
    Вложения Вложения

  9. #89
    Пользователь
    Регистрация
    27.11.2011
    Адрес
    Краснодар
    Сообщений
    10,583

    По умолчанию

    Продолжение следует...
    Развожу плату IO для Raspberry, должны будут сделать шаблон пока, без металлизации и один из старых вариантов.
    Пока вот пришел к такому варианту. количество входов/выходов 7-9, 8-8, 9-7 (два пина можно переключать либо на вход либо на транзисторный выход).
    7 выходов могут быть либо релейными 5А (реле SRA), либо аналоговыми 0-10В (аналоговые выходы управляются ШИМ с соответствующих пинов Raspberry), схема от Вольд-а с гальванической развязкой.
    На плате разведен вторичный ИП, которым можно записать либо аналоговые выходы 12В, либо сам Raspberry, если нет аналоговых выходов.
    Плата питается 24В.

    Собственно гляньте что вышло, разводку еще надо перепроверять ессно, но может что бросится сразу в глаза из ляпов ?
    Выглядеть будет примерно так как на картинках.

    Собственно собираюсь заказывать у китайцев, хотя может и у нас где. Интересует сколько штук заказывать, кто потом подпишется на покупку платы ? мне явно 10 штук не надо, точно уйдет 2 или может 3 штуки сразу.
    Еще такой момент. стоит ли расширить плату влево и сделать еще один вторичный ИП, чтобы от общего БП 24В питать и плату и аналоговые выходы и сам Raspberry ? Это увеличит плату и соответственно цену за нее.
    Изображения Изображения
    • Тип файла: jpg TOP.jpg (452.3 Кб, Просмотров: 124)
    • Тип файла: jpg BOTTOM.jpg (279.9 Кб, Просмотров: 74)
    Последний раз редактировалось melky; 21.01.2016 в 12:02.

  10. #90

    По умолчанию

    Цитата Сообщение от melky Посмотреть сообщение
    Продолжение следует...
    Развожу плату IO для Raspberry, должны будут сделать шаблон пока, без металлизации и один из старых вариантов.
    Пока вот пришел к такому варианту. количество входов/выходов 7-9, 8-8, 9-7 (два пина можно переключать либо на вход либо на транзисторный выход).
    7 выходов могут быть либо релейными 5А (реле SRA), либо аналоговыми 0-10В (аналоговые выходы управляются ШИМ с соответствующих пинов Raspberry), схема от Вольд-а с гальванической развязкой.
    На плате разведен вторичный ИП, которым можно записать либо аналоговые выходы 12В, либо сам Raspberry, если нет аналоговых выходов.
    Плата питается 24В.

    Собственно гляньте что вышло, разводку еще надо перепроверять ессно, но может что бросится сразу в глаза из ляпов ?
    Выглядеть будет примерно так как на картинках.

    Собственно собираюсь заказывать у китайцев, хотя может и у нас где. Интересует сколько штук заказывать, кто потом подпишется на покупку платы ? мне явно 10 штук не надо, точно уйдет 2 или может 3 штуки сразу.
    Еще такой момент. стоит ли расширить плату влево и сделать еще один вторичный ИП, чтобы от общего БП 24В питать и плату и аналоговые выходы и сам Raspberry ? Это увеличит плату и соответственно цену за нее.

    Хорошая работа !
    Необходимо знать конечную цену платы , возможно я готов поучавствовать

Страница 9 из 39 ПерваяПервая ... 789101119 ... ПоследняяПоследняя

Похожие темы

  1. CoDeSys V3 и ноутбук
    от smk1635 в разделе СПК2хх
    Ответов: 14
    Последнее сообщение: 23.09.2020, 08:11
  2. codesys v3
    от nevii в разделе ПЛК3хх
    Ответов: 3
    Последнее сообщение: 18.09.2014, 12:23
  3. ПЛК110 и CoDeSys v3
    от DIG в разделе ПЛК1хх
    Ответов: 32
    Последнее сообщение: 09.11.2011, 18:02
  4. CodeSys V3
    от nnesterov в разделе ПЛК3хх
    Ответов: 13
    Последнее сообщение: 05.04.2010, 15:12
  5. CoDeSys v3
    от Alor в разделе Трёп (Курилка)
    Ответов: 1
    Последнее сообщение: 02.12.2008, 10:48

Ваши права

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