资源简介
C#与三菱Q系列PLC通过MC协议通信,读取PLC寄存器中的数据,往PLC寄存器中写数据。
代码片段和文件信息
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.Net;
using System.Net.Sockets;
using System.Threading;
namespace PLC_TEST
{
public partial class Form1 : Form
{
//内锁 防止共用同一个SOCKET
//private Mutex mutexforsocket = new Mutex(true “MTX_FOR_KUBOTA_POKA“);
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender EventArgs e)
{
this.cbxRegType.SelectedIndex = 0;
//this.mutexforsocket.ReleaseMutex();
}
private string b2s(byte[] b)
{
string s = “寄存器[“ + this.cbxRegType.Text + “] 地址[“ + this.txtStartAddr.Text.Trim() + “]: “;
for (int i = 0; i < b.Length; i++)
{
s = s + b[i].ToString(“X“).PadLeft(2 ‘0‘) + “ “;
}
return s;
}
///
/// 生成Socket命令
///
/// R:读W:写
/// 寄存器地址
/// 数据
///
private byte[] createCommand(string typeint dregint data)
{
byte[] sendBuf;
switch (type)
{
case “R“:
{
sendBuf = new byte[21];
//副标题
sendBuf[0] = 0x50;
sendBuf[1] = 0x00;
//网络号
sendBuf[2] = 0x00;
//PLC号
sendBuf[3] = 0xFF;
//IO
sendBuf[4] = 0xFF;
sendBuf[5] = 0x03;
//站号
sendBuf[6] = 0x00;
//字节数
sendBuf[7] = 0x0C;
sendBuf[8] = 0x00;
//等待长度
sendBuf[9] = 0x0A;
sendBuf[10] = 0x00;
//命令
sendBuf[11] = 0x01;
sendBuf[12] = 0x04;
//子命令
sendBuf[13] = 0x00;
sendBuf[14] = 0x00;
//起始寄存器地址
sendBuf[15] = (byte)(dreg & 0xff);
sendBuf[16] = (byte)((dreg & 0xff00) >> 8);
sendBuf[17] = (byte)((dreg & 0xff0000) >> 16);
if(this.cbxRegType.Text.Equals(“R“))
{
//寄存器类型-R类
sendBuf[18] = 0xAF;
}
if (this.cbxRegType.Text.Equals(“D“))
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2017-09-25 14:51 PLC_TEST\
目录 0 2017-09-25 14:47 PLC_TEST\.vs\
目录 0 2017-09-25 14:47 PLC_TEST\.vs\PLC_TEST\
目录 0 2017-09-25 14:48 PLC_TEST\.vs\PLC_TEST\v14\
文件 16384 2017-09-25 14:48 PLC_TEST\.vs\PLC_TEST\v14\.suo
目录 0 2017-09-25 14:46 PLC_TEST\PLC_TEST\
文件 991 2017-09-25 14:47 PLC_TEST\PLC_TEST.sln
目录 0 2017-09-25 14:46 PLC_TEST\PLC_TEST\bin\
目录 0 2017-09-25 14:46 PLC_TEST\PLC_TEST\bin\Debug\
文件 14336 2017-09-25 14:46 PLC_TEST\PLC_TEST\bin\Debug\PLC_TEST.exe
文件 26112 2017-09-25 14:46 PLC_TEST\PLC_TEST\bin\Debug\PLC_TEST.pdb
文件 21680 2017-09-25 14:47 PLC_TEST\PLC_TEST\bin\Debug\PLC_TEST.vshost.exe
文件 490 2010-03-17 22:39 PLC_TEST\PLC_TEST\bin\Debug\PLC_TEST.vshost.exe.manifest
目录 0 2017-09-25 14:46 PLC_TEST\PLC_TEST\bin\Release\
文件 22016 2017-09-25 14:46 PLC_TEST\PLC_TEST\bin\Release\PLC_TEST.pdb
文件 12729 2017-09-25 14:46 PLC_TEST\PLC_TEST\Form1.cs
文件 10955 2017-09-25 14:46 PLC_TEST\PLC_TEST\Form1.Designer.cs
文件 5814 2017-09-25 14:46 PLC_TEST\PLC_TEST\Form1.resx
目录 0 2017-09-25 14:46 PLC_TEST\PLC_TEST\obj\
目录 0 2017-09-25 14:48 PLC_TEST\PLC_TEST\obj\Debug\
文件 790 2017-09-25 14:48 PLC_TEST\PLC_TEST\obj\Debug\DesignTimeResolveAssemblyReferences.cache
文件 6085 2017-09-25 14:47 PLC_TEST\PLC_TEST\obj\Debug\DesignTimeResolveAssemblyReferencesInput.cache
文件 4265 2017-09-25 14:47 PLC_TEST\PLC_TEST\obj\Debug\PLC_TEST.csproj.FileListAbsolute.txt
文件 847 2017-09-25 14:46 PLC_TEST\PLC_TEST\obj\Debug\PLC_TEST.csproj.GenerateResource.Cache
文件 14336 2017-09-25 14:46 PLC_TEST\PLC_TEST\obj\Debug\PLC_TEST.exe
文件 180 2017-09-25 14:46 PLC_TEST\PLC_TEST\obj\Debug\PLC_TEST.Form1.resources
文件 26112 2017-09-25 14:46 PLC_TEST\PLC_TEST\obj\Debug\PLC_TEST.pdb
文件 180 2017-09-25 14:46 PLC_TEST\PLC_TEST\obj\Debug\PLC_TEST.Properties.Resources.resources
目录 0 2017-09-25 14:46 PLC_TEST\PLC_TEST\obj\Debug\Refactor\
目录 0 2017-09-25 14:47 PLC_TEST\PLC_TEST\obj\Debug\TempPE\
文件 3584 2017-09-25 14:48 PLC_TEST\PLC_TEST\obj\Debug\TempPE\Properties.Resources.Designer.cs.dll
............此处省略15个文件信息
相关资源
- C# 调用win32 api函数-user32.dll详细说明
- C# 调用BarTender打印条码DEMO
- 大型比赛竞赛抽签系统 可打印 c# vs
- C#编写的Gerber查看器
- lua C# .Net4.0 vs2010 LuaInterface
- C#十六进制编辑器
- 明华URF-35H读卡器 C#读写源码 为大家
- C#文件流读取CSV文件
- c#读写PDF文件sql
- C# winform Socket大文件传输
- c#车牌识别系统附30张测试图片
- 《C#面向对象程序设计》源代码(CS)
- 金旭亮《C#面向对象程序设计》教案
- 试题库管理系统毕业论文(C#)源程序
- 学校网站原代码(C#.NET)
- C#-数据库操作技术-员工管理系统
- c#web开发入门经典
- C#与Matlab混合编程的几种方式
- c# 开发与 mysql数据库实现的增删改查
- C#异步操作 异步查询数据库 异步处理
- Basler相机通过IO触发源码
- [源代码] 《领域驱动设计 (C# 2008 实
- 松下PLC与C#通讯串口调试入门教程.z
- USB 继电器控制器 LCUS-1 保证能用 c#
- C# AES加密解密小工具
- C#圆形按钮,非常漂亮动态~~
- [精]C#仿QQ右下角弹出提示框()
- C#进程间通信-共享内存代码
- 有史以来最简单的三层(C#)
- vb调用c#编写的串口DLL文件(vb源码
评论
共有 条评论