Страница 1 из 3 123 ПоследняяПоследняя
Показано с 1 по 10 из 29

Тема: C# NModbus4+ПЛК63

  1. #1

    По умолчанию C# NModbus4+ПЛК63

    Здравствуйте. Мне понадобилось разработать приложение на C# для опроса ПЛК63 и сохранения данных в БД. С ПЛК я до этого не работал, да и вообще занимался только веб-разработкой до сего момента. Соответственно действовать приходиться наугад, и, по сути я вообще не понимаю, как с этим работать. Решил попробовать использовать библиотеку NModbus4.
    Однако следующий код не работает:
    private void button1_Click(object sender, EventArgs e)
    {

    var mbus = ModbusSerialMaster.CreateRtu(port);
    MessageBox.Show((mbus.ReadHoldingRegisters(1, 0, 1)[0]).ToString()); - на этой строке выдает: Необработанное исключение типа "System.IO.IOException" в NModbus4.dll
    Дополнительные сведения: Checksums failed to match 1, 3, 0 != 1, 3, 0, 0, 0
    }
    Нужна помощь либо в использовании NModbus4 либо описание и помощь по какому-нибудь альтернативному способу опроса ПЛК. Заранее спасибо.

  2. #2
    Пользователь
    Регистрация
    13.10.2011
    Адрес
    Златоуст
    Сообщений
    1,021

    По умолчанию

    Какие-то левые нули от ПЛК идут что ли... Попробуйте другими готовыми мастерами поопрашивать тот же регистр той же функцией. Будет хотя бы понятно, куда двигаться.

  3. #3

    По умолчанию

    Какими например? Я не совсем понимаю, ПЛК вообще у меня принял запрос или нет.

  4. #4

    По умолчанию

    Попробовал использовать функцию при выключенном ПЛК, та же самая ошибка

  5. #5
    Пользователь
    Регистрация
    13.10.2011
    Адрес
    Златоуст
    Сообщений
    1,021

    По умолчанию

    Код — в студию. Весь.
    Последний раз редактировалось Yegor; 18.01.2016 в 13:23.

  6. #6

    По умолчанию

    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.Linq;
    using System.Text;
    using System.Threading.Tasks;
    using System.Windows.Forms;
    using Modbus.Device;
    using System.Net.Sockets;
    namespace DispetchTry0
    {
    public partial class Form1 : Form
    {
    public Form1()
    {
    InitializeComponent();
    }

    private void Form1_Load(object sender, EventArgs e)
    {
    port.Open();
    if (!port.IsOpen)
    MessageBox.Show("Порт не открыт");


    }

    private void button1_Click(object sender, EventArgs e)
    {

    var mbus = ModbusSerialMaster.CreateRtu(port);
    MessageBox.Show((mbus.ReadHoldingRegisters(00, 3, 1)[1]).ToString());
    }
    }
    }

  7. #7
    Пользователь
    Регистрация
    13.10.2011
    Адрес
    Златоуст
    Сообщений
    1,021

    По умолчанию

    Откуда берётся port?

  8. #8

    По умолчанию

    private System.IO.Ports.SerialPort port; Объект стандартного класса SerialPort.

  9. #9

    По умолчанию

    port настроить надо, насколько помню. В VS в справке все это есть.

  10. #10
    Пользователь
    Регистрация
    13.10.2011
    Адрес
    Златоуст
    Сообщений
    1,021

    По умолчанию

    Пхххх.... Ну проект тогда сюда целиком что ли. И настройки используемого последовательного порта ПЛК из кодесиса тоже.

Страница 1 из 3 123 ПоследняяПоследняя

Похожие темы

  1. ПЛК63
    от Andrew82 в разделе ПЛК63/73
    Ответов: 6
    Последнее сообщение: 19.10.2015, 14:44
  2. Help!!! ПЛК63
    от Makar в разделе ПЛК63/73
    Ответов: 23
    Последнее сообщение: 25.05.2015, 17:06
  3. ПЛК63-L
    от CheeryNick в разделе Сервисное ПО
    Ответов: 1
    Последнее сообщение: 31.01.2011, 09:57
  4. плк63
    от morcegolamer в разделе ПЛК63/73
    Ответов: 2
    Последнее сообщение: 08.05.2010, 00:53

Ваши права

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