Форум программистов, компьютерный форум, киберфорум
Контроллеры PLC
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 5.00/282: Рейтинг темы: голосов - 282, средняя оценка - 5.00
54 / 54 / 2
Регистрация: 30.05.2014
Сообщений: 83

Библиотека для обмена данными с ПЛК Siemens S7-300/400

15.07.2014, 08:04. Показов 57068. Ответов 51
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Предлагаю следующую библиотеку для обмена с контроллерами siemens серии S7-200, 300, 400, 1200* для платформы NET.
  • Обмениваться можно переменными типа DB и меркерами*.
  • Данные для обмена объявляются в файлах формат txt, xlsx или xml.
  • Данные читаются и пишутся по именам заданным в этом файле.

* - версия 1.1


Пример:
  • Заполнение таблицы сигналов

  • Связь с ПЛК
    Code
    1
    2
    3
    4
    5
    6
    7
    8
    
      // создаем клиент
    PLCS7_NET.CL.Client cl = new PLCS7_NET.CL.Client();
     
    // иниц-ия данных      
    cl.Init(@".\tableSignal.xlsx", TypeInitFile.xlsx);
     
    // соединяемся с ПЛК
    int er =  cl.Connect(_ipAddr, _rack, _slot, _timeUpd);
  • 3. Чтение данных
    Code
    1
    2
    3
    4
    5
    6
    7
    
        bool err;
     
     int val1 =  cl.ReadInt16("DriveFlt", out err);
     
    int val2 =  cl.ReadByte("Press", out err);
     
    double val3 = cl.ReadReal("Flow", out err);
  • 4. Запись данных
    Code
    1
    
        cl.WriteInt32("Force", 34, out err);

Скачать (исходник и мануал прилагаются): PLCS7_NET_RUS_V1.0.rar


Изменения версии 1.1:
- добавлена возможность чтения/записи меркер области;
- добавлен контроллер S7-1200

Скачать (исходник и мануал прилагаются): PLCS7_NET_V1.1.rar


-----------------------------------------------------------------------------------------
12
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
15.07.2014, 08:04
Ответы с готовыми решениями:

Libnodave. Библиотека для доступа к ПЛК Siemens серии S7
Для модераторов: По мотивам https://www.cyberforum.ru/post2368464.html набивка мануал-факами. Тему или оставить тут или прикрепить или в...

Загрузка программы из ПЛК Siemens серии S7-400
Добрый день! Возникла необходимость извлечь из контроллера Сименс S7-414 загруженную в него программу. Я подключаюсь к нему при помощи...

IP защита ПЛК Siemens Simatic 300
Здравствуйте, хочу узнать мнение опытных людей о том как контроллеры Siemens 300, 400 переносят пыль, в частности угольную. У нас на...

51
 Аватар для quench
1 / 1 / 0
Регистрация: 17.06.2008
Сообщений: 39
13.12.2017, 15:08
Студворк — интернет-сервис помощи студентам
спасибо, теперь понятно в какую сторону дуть.
мне одно еще не понятно, как сконфигурированная система, смотри мои примеры, позволяет "вмешиваться"
в обмен инофрмацией?
Если в конфиге контролера не указать партнера, то для контролера партнер будет осутствовать.
Затем считать одно, а записать в чужое устройство... а как же безопасность? DB могут и фукциональным
блокам принадлежат. Обычным способом куча предупреждений выходит при попытке заглянуть в DB.
Нектороые, еслт не изменет память, не позволяют online состояния переменных просматривать.
А здесь опенсурсная библиотека
Variable Table мы создаем в проекте, она как бы своя. А здесь что то подключилось, считало, записало.

Добавлено через 4 минуты
ps

возможно имеется в наличии готовое приложение, которое можно погонять, покрутить им, посчитывать с адресов,
с каким либо экстерным конфиг.файлом, что бы настройки задавать?
сейчас просто ничего не смогу скомпилировать

Добавлено через 8 минут
psps

проникся
BIG FAT WARNING:
This is beta code and information. You assume all responsibility for its use.

DANGER: DON'T connect to a PLC unless you are certain it is safe to do so!!! It is assumed that you are experienced in PLC programming/troubleshooting and that you know EXACTLY what you are doing. PLCs are used to control industrial processes, motors, steam valves, hydraulic presses, etc. You are ABSOLUTELY RESPONSIBLE for ensuring that NO-ONE is in danger of being injured or killed because you affected the operation of a running PLC.
Also expect that buggy drivers could write data even when you expect that they will read only !!!
вообщем это игрушка и очень опасная игрушка. но все одно интересно, качнул, оказывается имеется поддержка VBA, что сейчас под рукой.
Возможно, кто поможет библиотеку с VBA консолидировать
0
91 / 29 / 6
Регистрация: 17.03.2016
Сообщений: 212
13.12.2017, 22:18
Вот пользуйтесь, здесь только чтение. Как писать я думаю сами разберетесь.
Если что ехе-шник лежит здесь:
WindowsFormsApplication1\WindowsFormsApp lication1\bin\Debug\WindowsFormsApplicat ion1.exe
это проект на visual studio
Вложения
Тип файла: rar WindowsFormsApplication1.rar (577.5 Кб, 142 просмотров)
1
137 / 107 / 23
Регистрация: 06.10.2008
Сообщений: 451
17.12.2017, 17:33
А с 1500 контроллерами она работать может?
Если не сложно, подскажите пожалуйста, в чем различие у 1500 с остальными?
0
0 / 0 / 0
Регистрация: 20.12.2017
Сообщений: 1
21.12.2017, 10:31
Здравствуйте!
Не могли бы подсказать, в чём может быть причина ошибки 13 "Переменная с именем...имеет другой тип"?
Типы перепроверял несколько раз, всё подходит, всё правильно.
0
0 / 0 / 0
Регистрация: 20.12.2017
Сообщений: 2
25.12.2017, 13:22
Цитата Сообщение от Максимка111 Посмотреть сообщение
Здравствуйте!
Не могли бы подсказать, в чём может быть причина ошибки 13 "Переменная с именем...имеет другой тип"?
Типы перепроверял несколько раз, всё подходит, всё правильно
Вот та-же беда
0
91 / 29 / 6
Регистрация: 17.03.2016
Сообщений: 212
25.12.2017, 16:09
Я думаю если бы Вы написали здесь что и как проверяли, то возможно Вам что-нибудь и подсказали, а так никто не знает что Вы там делали.
0
0 / 0 / 0
Регистрация: 20.12.2017
Сообщений: 2
27.12.2017, 06:25
Цитата Сообщение от malkot Посмотреть сообщение
Я думаю если бы Вы написали здесь что и как проверяли, то возможно Вам что-нибудь и подсказали, а так никто не знает что Вы там делали.
Меня скорей всего подводит то что C# в глаза не видел до этого, но вроде потихоньку удаётся переделывать WindowsFormsApplication1.rar в консольную программку (чтоб принимала параметры PLC и адрес как аргумент в комстроке).
Так что спасибо за пример, разберусь рано или поздно. Вот другие примеры в ветке не так радуют, но хватит и WindowsFormsApplication1.rar.
0
0 / 0 / 0
Регистрация: 01.04.2018
Сообщений: 1
07.04.2018, 15:29
Вопрос к уважаемому Tyiler:
В какой среде разработки делались приведенные фрагменты кода? Или в какой лучше это делать?
0
0 / 0 / 0
Регистрация: 07.11.2016
Сообщений: 2
11.01.2020, 16:06
Собрал приложение на vb.net тестирование прошло на ура. С увеличением считываемых данных возникли проблемы. На примере чтения двух данных. Считывание двух данных с разницей адресов в 220 байт возникает ошибка чтения. К примеру db1.dbb0 и db1.dbb220(и более) вызывает ошибку 6. С меркерами та же беда. Изменяя адреса на db1.dbb1 и db1.dbb221(и старше) получаю ту же ошибку. Если читать те же адреса по одному проблем не возникает. Почему? Контроллер S7 314.
0
1 / 1 / 0
Регистрация: 26.10.2014
Сообщений: 5
04.10.2020, 19:10
Огромное спасибо! Читает 400тку на ура. Еще бы найти как записать dbw в контроллер
0
Эксперт JavaЭксперт по электроникеЭксперт .NET
 Аватар для wizard41
3460 / 2781 / 575
Регистрация: 04.09.2018
Сообщений: 8,743
Записей в блоге: 3
05.06.2021, 17:35
Для S-1200 не работает.
При попытке считать постоянно пишет "Переменная с именем...имеет другой тип".
Перепробовал все, не лечится. Надо править библиотеки автора, но это очень лень.
0
Эксперт JavaЭксперт по электроникеЭксперт .NET
 Аватар для wizard41
3460 / 2781 / 575
Регистрация: 04.09.2018
Сообщений: 8,743
Записей в блоге: 3
12.07.2021, 18:00
В интернетах есть хорошая библиотека для Simatic контроллеров - Sharp7, причем одним файлом. очень хорошо работает, проверено лично на производстве в течение 1 месяца. Багов нет.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
12.07.2021, 18:00

Соединение датчика температуры с ПЛК Siemens S7-300 по RS-485
Здравствуйте! Могу ли я подключить датчик температуры по RS-485 с ПЛК Siemens S7-300? Если нет то как можно реализовать соединение

Запрос к области памяти ПЛК siemens s 300 по сети Profibus
Доброго времени суток. Возникла необходимость соединить 2 контроллера Siemens s 300 по сети Profibus. сеть реализовал Accessible nodes...

[Siemens s7 314c 2dp] Корректная программа для ПЛК одной версии не записывается в ПЛК другой версии
Здравствуйте! Прошу совета как быть. Ситуация следующая: Siemens s7 314c 2dp. ПЛК версии 1.0 вышел из строя. Слетела прошивка....

Выбор ноутбука для работы с ПЛК Siemens и др
Всем доброго времени суток. Прошу совета от знающих. Наш отдел занимается ремонтом технологического оборудования, у которого есть ПЛК....

Какие модули расширения подходят для конкретного ПЛК Siemens
Доброго времени суток. Вопрос: в какой документации указано какие модули расширения подходят для конкретного ПЛК Сименс. И после установки...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
52
Ответ Создать тему
Новые блоги и статьи
Кредитный калькулятор
Maks 05.08.2026
Решение задачи по прикладной информатике средствами 1С. Задача: Напишите приложение-калькулятор, которое помогает рассчитывать параметры кредита для аннуитетного и дифференцированного видов. . .
У нас сейчас поговорку "Опять 25" нужно переделать на "Опять +35".
kumehtar 04.08.2026
С ностальгией вспоминаю времена моего детства, когда у нас и правда +25 - была максимальная температура летом. Раньше +25 °C реально казались вершиной жары, когда можно было весь день пропадать на. . .
Как ИИ начал спорить и врать (возможно почуяв опасность для себя от индустрии - уход от электроники).
Hrethgir 04.08.2026
Недельный диалог, на фоне событий с НПЗ. Да, из спирта можно получать бензин, и это не сложно. Но потом в схеме я решил избавиться от насоса, при этом полностью сделав контроль подачи спирта в. . .
Термопринтер QR701
Argus19 03.08.2026
Термопринтер QR701 Купил два термопринтера QR701. На сэлф-тесте написано: Language: PC936 (GB18030). Что означает, что принтеры могут печатать только латиницу и китайские иероглифы. Так же. . .
Создание формы заимствованного документа
Maks 03.08.2026
Задача: Необходимо создать собственную форму заимствованного документа. На форме должен быть реквизит "Покупатель", а также табличная часть со следующими реквизитами: - Расчетный счет покупателя. . .
Задача предоставления скидок покупателям
Maks 03.08.2026
Задача: В документе "Продажи" необходимо реализовать функционал предоставления скидок покупателям. Скидка должна автоматически рассчитываться и подставляться в соответствующее поле при выборе. . .
Почему SEO не начинается с ключевых слов: что проверить до написания текстов
Neotwalker 01.08.2026
Когда владельцу сайта предлагают заняться SEO, первым шагом часто становится сбор запросов и написание текстов. Логика кажется понятной: 1. Находим ключевые слова. 2. Добавляем их на. . .
Знание — сила: Доктрина интенциональности знаний, углубление в формулу
Hrethgir 01.08.2026
https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11957&stc=1&d=1785567302 Знаменитый афоризм Фрэнсиса Бэкона «Знание — сила» (Scientia potentia est) в массовой культуре принято понимать. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru