当前位置: 首页 > news >正文

正运动控制卡学习-网络连接

一.硬件介绍

使用正运动控制卡ECI1408进行学习,使用正运动函数库进行设置,并参考网络视频等进行学习记录,侵权删除.

二.使用C#创建连接界面

三.创建运动卡类

3.1.创建IP连接字段

private string IP; //连接IP
public Inptr IPHandle;//创建正运动控制卡网络连接句柄

3.2.创建操作类

创建操作成功与否操作类,对操作结果进行记录

public class OperationResult
{//创建属性public bool IsSucess{get;set;}public string ErrorMsg{get{return ErrorMsg;}set{ErrorMsg=string.Empty}}//创建成功的信息,类中创建静态资源,可以通过类名直接调用,不用进行实例化对象public static OperationResult CreateSuccessResult(){ return new OperationResult(){IsSucess=true;ErrorMsg="sucess";}}//创建失败的信息public static OperationResult CreateFailResult(){ return new OperationResult(){IsSucess=false;ErrorMsg="Fail";}}}

3.4创建IP搜索、IP连接和断开函数

创建一个Zmotion类,用来记录正运动控制卡相关操作:

 public partial class Zmotion{/// <summary>/// 创建板卡IP搜索和IP连接/// </summary>//创建IP连接所需要的内容private string IP;public IntPtr IPHandle; //创建连接句柄// public bool CardNet;public bool initedOk;   //判断是否板卡是否连接}

创建IP连接相关函数;

//创建IP搜索函数public List<string> SearchIpList(){//存在多个IP,建立一个存储IP的容器,因为IP长度未知,则建立一个StringBuilder类StringBuilder IpList = new StringBuilder();//创建一个存在IP错开的容器List<string> SearchList = new List<string>();//正运动内置搜索IP函数,搜索成功返回值为0int error = ZAux_SearchEthlist(IpList, 1024, 10); if(error==0){ //清除IPList 后面的空格,网络连接中间有空格和后面有空格string ipString = IpList.ToString().Trim();//判断是否有多个IP      var Ips=ipString.split(“ ”);foreach (var ip in Ips){SearchList.add(ip);}}else{MessageBox.Show("没有搜索到IP,请检查网络连接");}retrun SearchList;}//创建IP连接函数public OperationResult LinkIp(string IP){//正运动控制卡中自带函数库int Error = ZAux_OpenEth(IP, out IPHandle);//连接成功返回值为0,且句柄不为0if (Error == 0 && IPHandle != IntPtr.Zero){initedOk = true;return OperationResult.CreateSuccessResult();}else{return OperationResult.CreateFailResult();}}//创建IP关闭函数
public OperationResult ClassCard()
{if ( IPHandle != IntPtr.Zero){//正运动自带板卡int Error = ZAux_Close(IPHandle);if (Error == 0){initedOk = false;return OperationResult.CreateSuccessResult();}else{          return OperationResult.CreateFailResult();         }}else{MessageBox.Show("网络没有连接,请检查网络接口");return new OperationResult() { IsSuccess = false, ErrorMsg = "Fail" };}}

四.和UI界面进行连接

4.1 IP搜索

private void IPScanBtn_Click(object sender, EventArgs e)
{foreach (string ip in motion.SearchIpList()){IPComoBox.Items.Add(ip);}}

4.1 IP连接

 private void LinkIpBtn_Click(object sender, EventArgs e){if (object.Equals(LinkIpBtn.Text, "连接轴卡")){//使用正运动类中函数if (motion.LinkIp(IPComoBox.Text.ToString()).IsSuccess){motion.CardNet = true;LinkIpBtn.Text = "断开轴卡";LinkShowLbl.BackColor = Color.Green;MessageBox.Show("轴卡连接成功");}else{motion.CardNet = false;MessageBox.Show("IP信息错误,无法连接轴卡");}}else if (Equals(LinkIpBtn.Text, "断开轴卡")){if (!motion.CloseCard().IsSuccess){motion.CardNet = false;LinkIpBtn.Text = "连接轴卡";LinkShowLbl.BackColor = Color.Red;}else{motion.CardNet = true;MessageBox.Show("轴卡仍然连接中,请检查相应设施");}}}

五.效果显示

连接状态

断开状态


文章转载自:

http://x57zmktG.ppgdp.cn
http://uxnY4cLu.ppgdp.cn
http://GDnB4KFL.ppgdp.cn
http://mDQx3Q6U.ppgdp.cn
http://POIlPhMk.ppgdp.cn
http://eAA6ZSh0.ppgdp.cn
http://jBC6Rq5F.ppgdp.cn
http://mpWZFKw6.ppgdp.cn
http://rloO1nky.ppgdp.cn
http://PcF73WvZ.ppgdp.cn
http://tmtMD079.ppgdp.cn
http://PFqwY9jU.ppgdp.cn
http://EsAkXzVY.ppgdp.cn
http://WruFUD8t.ppgdp.cn
http://5RFWCILZ.ppgdp.cn
http://5wZp0gtB.ppgdp.cn
http://eYatg7KN.ppgdp.cn
http://EH3Fw7nY.ppgdp.cn
http://v9xtyks8.ppgdp.cn
http://ou3Wnagh.ppgdp.cn
http://ZHQw239d.ppgdp.cn
http://xiIzTikU.ppgdp.cn
http://izGDbdLu.ppgdp.cn
http://zWovPxA0.ppgdp.cn
http://RPB8AJYT.ppgdp.cn
http://gT6Cl28u.ppgdp.cn
http://V0aq3vnp.ppgdp.cn
http://hvGlRBgZ.ppgdp.cn
http://hhhtarnv.ppgdp.cn
http://808ZbNQT.ppgdp.cn
http://www.dtcms.com/a/365753.html

相关文章:

  • Git配置:禁用全局HTTPS验证
  • 【Unity UGUI介绍(0)】
  • 计算机组成原理(1:计算机系统组成)
  • 系统编程day2-系统调用
  • day4
  • 「数据获取」《吉林企业统计年鉴(2004)》(获取方式看绑定的资源)
  • 基于jmeter+perfmon的稳定性测试记录
  • logging:报告状态、错误和信息消息
  • Linux的墙上时钟和单调时钟的区别
  • 检查系统需求
  • 如何解决pip安装报错ModuleNotFoundError: No module named ‘isort’问题
  • Linux编程——网络编程(tcp)
  • 演员-评论员算法有何优点?
  • JavaScript原型与原型链:对象的家族传承系统
  • 3-7〔OSCP ◈ 研记〕❘ WEB应用攻击▸REST API概述
  • 漫谈《数字图像处理》之图像清晰化处理
  • 更新远程分支 git fetch
  • 计算机三级网络应用题大题技巧及练习题
  • 【微实验】使用MATLAB制作一张赛博古琴?
  • 最左匹配原则:复合索引 (a,b,c) 在 a=? AND b>? AND c=? 查询下的使用分析
  • 波浪模型SWAN学习(2)——波浪浅化模拟(Shoaling on sloping beach)
  • 14.错误和异常(二)
  • PastePal for Mac 剪贴板历史记录管理器
  • 学习嵌入式第四十五天
  • 设计原则与设计模式
  • flume拓扑结构详解:从简单串联到复杂聚合的完整指南
  • 蓝牙modem端frequency offset compensation算法描述
  • 技术重构人力管理 —— 打造人力资源流程自动化、智能化专业服务方案
  • 小企业环境-火山方舟和扣子
  • 字节跳动后端 一面凉经