C# 通过网络和三菱的PLC通信
C# 通过网络和三菱的PLC通信
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace PLCTest2
{
public partial class Form1 : Form
{
private AxActUtlTypeLib.AxActUtlType axActUtlType = null ;
public Form1()
{
InitializeComponent();
this .axActUtlType = new AxActUtlTypeLib.AxActUtlType();
//((System.ComponentModel.ISupportInitialize)(this.axActUtlType)).BeginInit();
this .Controls.Add( this .axActUtlType); //貌似这个控件必须要加到Controls中,不然就会引发异常。
}
private void btnConn_Click( object sender, EventArgs e)
{
try
{
int iStation = Convert.ToInt32( this .txtStationNo.Text.Trim());
this .axActUtlType.ActLogicalStationNumber = iStation;
this .axActUtlType.ActPassword = this .txtPassword.Text.Trim();
int rtn = this .axActUtlType.Open();
if (rtn == 0)
{
ShowMsg( "连接成功!" );
this .txtStationNo.Enabled = false ;
this .txtPassword.Enabled = false ;
this .btnConn.Enabled = false ;
}
else
{
ShowMsg( "连接失败" );
}
}
catch (Exception ex)
{
ShowMsg(ex.Message);
}
}
private void ShowMsg( string msg)
{
string str = string .Format(DateTime.Now.ToString( "HH:mm:ss" ) "_" msg);
this .richTextBox1.SelectionStart = this .richTextBox1.Text.Length;
this .richTextBox1.SelectedText = (str Environment.NewLine);
this .richTextBox1.ScrollToCaret();
}
private void btnRead_Click( object sender, EventArgs e)
{
try
{
string strAddr = this .txtAddr.Text.Trim();
int num = Convert.ToInt32( this .txtNum.Text.Trim());
short [] arr = new short [num];
int rtn = this .axActUtlType.ReadDeviceBlock2(strAddr, num, out arr[0]);
if (rtn == 0)
{
ShowMsg( "读取数据成功!" );
for ( int i = 0; i < arr.Length; i )
{
ShowMsg( string .Format( "{0:X4}" , arr[i]));
}
}
else
{
ShowMsg( "读取数据失败" );
}
}
catch (Exception ex)
{
ShowMsg(ex.Message);
}
}
private void btnWrite_Click( object sender, EventArgs e)
{
try
{
string strAddr = this .txtAddr.Text.Trim();
string [] strData = this .txtData.Lines;
int num = strData.Length;
short [] arr = new short [num];
for ( int i = 0; i < num; i )
{
arr[i] = Convert.ToInt16(strData[i]);
}
int rtn = this .axActUtlType.WriteDeviceBlock2(strAddr, num, ref arr[0]);
if (rtn == 0)
{
ShowMsg( "写入数据成功!" );
this .txtNum.Text = num.ToString();
}
else
{
ShowMsg( "写入数据失败" );
}
}
catch (Exception ex)
{
ShowMsg(ex.Message);
}
}
}
}
|
标签: C# 网络 c 通信 的
C# 通过网络和三菱的PLC通信相关推荐
- stm32与三菱PLC通信
一.三菱PLC通讯概要 三菱PLC FX系列通信结构如下图所示: 三菱PLC FX系列的通信规格如下图所示: 三菱PLC FX系列一般有以下几种通信模块,以FX2N为例: FX2N-232-BD ...
- 上位机开发之三菱PLC通信
前言 三菱MC协议是开发三菱系列PLC必须掌握的一种通信协议,其目的是让外部设备,可以通过串行通信模块C24或以太网接口模块E71,实现对可编程控制器CPU的数据访问. MC协议是Melsec协议的简 ...
- 通过电脑给继电器发送指令_三菱FX PLC学习之通信指令(上)
点击上方蓝字关注我们 [免费抽奖]电气人不能错过的PLC书籍与软件! 通信指令本身不难,难的是对通信的理解.在学习PLC通信指令之前,我曾尝试去看通信相关的课程,然后告诉自己:算了,不必勉强自己,学不 ...
- mx三菱plc安装报错_Qt使用 MX Component 插件与三菱PLC通信
作者:billy 版权声明:著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处 MX Component 简介 MX Component 是三菱PLC官方上位机通讯中间件,通过使用该工 ...
- 上位机通过MX component version 组件与三菱PLC通信解决办法,最新MX component version5支持X64
上位机通过MX component version4组件与三菱PLC通信解决办法,最新MX component version5支持X64 第一节:MX Component Version软件与手册下 ...
- 上位机通过MX component version4 组件与三菱PLC通信解决办法
引用:https://blog.csdn.net/txb13145826106/article/details/115007885 上位机通过MX component version4 组件与三菱PL ...
- 三菱 fx2n 通信 linux 代码,三菱FX2N PLC串行通讯指令(FNC 80 RS)
三菱FX2N PLC串行通讯指令(FNC 80 RS) 串行通讯指令(FNC 80 RS) 1.指令格式: [RS D0 K8 D10 K8] 发送数据帧起始地址和 ...
- PC与三菱FX系列PLC通信实例
本文介绍的 PC 与三菱 FX 系列 PLC 通信,是通过 PLC 的编程口与 PC 机的串口进行的,采用 SC-09 编程电缆作为计算机与 PLC 通信的连线.电缆的 9 芯 D 形插头连接在计算机 ...
- 5u fb库 三菱plc_三菱FX5U PLC入门必备基础知识特点
三菱FX5U PLC因自身的性能特点,使用的人群越来越广,首先FX5U PLC支持结构化程序,并可写入ST语言和FB语言,以及支持多个程序的执行. 其次,在FX系列中,FX5UPLC的指令运算速度是最 ...
最新文章
- GIS+=地理信息+云计算技术——Spark集群部署
- SP-1CL3 陶瓷接收管 光电接收二极管 红外线接收管
- idea教程--使用mave创建普通java项目
- Web架构师成长之路
- centos7 和centos 6的一些区别
- markdown 常用语法总结 - 个人版
- 基于FPGA实现ADC7768数据采集系统设计(8路)
- iOS 使用NJKWebViewProgress做webview进度条(加载网页时获取加载进度)
- 悼念著名计算机科学学者孙钟秀院士
- 大疆RoboMaster技术总监:我是如何成为一名机器人工程师的
- Allegro-PCB文件默认双击打开
- Selenium 2入门
- 2022年最新前端面试题
- execute immediate使用方法
- laravel Migration与Seeder的用法
- Java云同桌学习系列(二十二)——mongoDB数据库
- MML ch 10 主成分分析降维(Dimensionality Reduction with Principal Component Analysis)
- 琐事记 - 2015/10/28
- 解决Win10系统激活office2019时出现 0xc004f074 无法激活问题,亲测可用!!!
- 正版软件,盗版软件和免费软件
热门文章
- 读文献——《Learning representations by back-propagating errors》
- Android屏幕渲染
- 平凡的女人,伟大的奉献
- 服务器SN信息,命令查看服务器SN号
- dd命令创建一个大文件
- android 智能电视 电视盒子 安卓嵌入式硬件LAN压力测试
- 给你看个宝贝:GitHub 最野的开源库,把你拿捏的死死的。。。
- Servlet.init() for servlet [Global] threw exception
- MTCNN论文翻译 人脸检测
- kafka中文文档new comsumer配置参数