部分使用简仪科技开源库的程序,主要是曲线显示部分。
下载地址:
链接:https://pan.baidu.com/s/12GoxefCP0whGW1-kSopDWQ
提取码:llpf
S7NETPLUS是一款开源的程序库,用于与西门子PLC通讯,这里使用的是西门子S71200。
PLC需要做设置,允许上位机访问
添加一个数据块,取消”优化块的访问”
S7NET下载地址
链接:https://pan.baidu.com/s/1aAVIRIhUtcorQjlz9qWmOA
提取码:4b7d
C#编程,添加S7NET的引用
使用对象浏览器,查看要用到的几个函数
源代码如下
using System; using System.Windows.Forms; using S7.Net;
namespace WindowsFormsApplication5 {
{
{ InitializeComponent(); }
{
plc = new
{ plc.Open(); }
{
} }
{ plc.Close(); }
{
{
}
{
} }
{
{
}
{
} }
{ plc.Write(“DB1.DBW0”,Convert.ToInt16(textBox1.Text)); } } } |
2021年9月23日
Nmodbus4是一套开源的驱动程序,支持ModbusRTU,,ModbusASCII,ModbusTCP等,支持主从站模式,这里介绍基本的ModbusRTU主站的使用方法,详细的使用方法请参见帮助文档。
驱动文件和帮助文档下载地址:
链接:https://pan.baidu.com/s/1eK16kj9M19QvQwfT-Bvo1Q
提取码:o923
我们读取和写入个保持寄存器的的一个值。
代码如下:
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 System.IO; using System.IO.Ports; using Modbus; using Modbus.Data; using Modbus.Device; using Modbus.Extensions; using Modbus.IO; using Modbus.Message; using Modbus.Utility; using System.Threading;
namespace WindowsFormsApplication9 {
{
{ InitializeComponent(); }
{
textBox1.Text = hr[0].ToString(); }
{
serialPort1.PortName = “COM5”; serialPort1.BaudRate = 9600; serialPort1.DataBits = 8; serialPort1.StopBits = StopBits.One; serialPort1.Parity = Parity.None; serialPort1.Open();
master = ModbusSerialMaster.CreateRtu(serialPort1); }
{
{ master.WriteSingleRegister(1, 1, Convert.ToUInt16(textBox2.Text)); }
{
}
}
{ serialPort1.Close(); master.Dispose(); }
{
textBox1.Text = hr[0].ToString(); } } } |