logo
publist
写文章

简介

该用户还未填写简介

擅长的技术栈

可提供的服务

暂无可提供的服务

基恩士plc的ST编程

首先在数据类型中创建DI/DO/AI/AO的结构体和联合体,创建结构体的目的是为了后续在程序中可以直接使用变量名编程,而不是DI/DO/AI/AO这种方式(不宜维护)。如下图定义的是AI的联合体,然后在程序中需要对_AI进行赋值。基恩士PLC的FB支持内部变量的创建以及外部变量的创建,外部变量就是Argument,用于在外部程序调用时传递的变量类型。(3)、IO映射做好了后,便可以按功能创建FB块

#开源
c#关于Dictionary和Hashset中如何确认key或元素的唯一性

Dictionary是HashTable的泛型实现,那么在使用Add方法添加元素时,如果key已经存在,就会报错(可以改用直接赋值的方式避免错误),那Dictionary是如何知道元素已经存在的,尤其对于引用类型的key。如果两个同时满足就会抛异常。下面的代码是Dictionary反编译的源码,摘取了Add方法的源码。默认情况下,如果自定义的类型的GetHashCode返回的哈希码大概率不同(不绝

#哈希算法#散列表#算法
关于c#异步编程时的同步上下文的的理解SynchronizationContext

在程序开发时,尤其是在UI线程中开启异步调用(async/await)时,在await执行时,程序会自动将当前UI主线程的上下文传递给异步线程,同时将await后面的代码通过委托传递的方式传递过去。在主线程中避免使用Task.Result或Task.Wait方法,这两个方法是阻塞的,如果使用了这两个方法同步等待异步结果,那么很容易出现死锁,因为异步线程执行完成后,是要返回到主线程的同步上下文的,而

#c#
三菱L系列PLC与机器人,智能相机之间的TCPIP通讯测试小结

最后在配置内部网络参数的打开设置时有1-16个通讯设备可以被选择,设置其中需要用的,配置第几个设备,在编程时,sp.socopen等网络参数命令是需要选择这个设备编号的。在使用GX WORK2设置PLC参数时因为是内置的网口,所以选择PLC参数设置中的内部网口,如果是扩展的,那么需要选择网络参数设置。如果只与编程器连接,在设备连接时可以选择直连,如果还有第三个设备需要通过交换机连接,那么要选择间接

#机器人
到底了