发表于:2020/5/14 20:28:14
#0楼
接上贴,在树莓派上安装Codesys的runtime,并正常联机后,树莓派就成为一个有一定控制功能的。。。。树莓派了。。。
我们可以看到,Codesys支持树莓派的各种接口:
树莓派自带的好多接口在工控领域都不怎么用,简单介绍一下:
树莓派自带一个摄像头接口,很多人用来做机器视觉的应用,CodeSys也显示了这个Camera device,我没有摄像头,也没法测试是不是可以很简单的实现一些咱们PLC做不到的图像识别,有条件的同学可以继续努力;
树莓派还有一个显示器接口,可以接触摸屏,很方便的改造成的怀旧游戏机,这个也供感兴趣的同学研究,欢迎发帖展示成果啊;
对控制最有用的恐怕就是这个GPIO接口了,位置如下图所示,下面的图还标出了其中的串口(UART)的管脚:
这个GPIO可是功能强大,在作为通用IO的基础上还复用支持了很多功能:
I2C接口
I2C是由Philips公司开发的一种简单、双向二线制同步串行总线。它只需要两根线即可在连接于总线上的器件之间传送信息。树莓派通过I2C接口可控制多个传感器和组件。它们的通信是通过SDA(数据引脚)和SCL(时钟速度引脚)来完成的。每个从设备都有一个唯一的地址,允许与许多设备间快速通信。ID_EEPROM引脚也是I2C协议,它用于与HATs通信。
SPI接口
SPI是串行外设接口,用于控制具有主从关系的组件,采用从进主出和主进从出的方式工作,树莓派上SPI由SCLK、MOSI、MISO接口组成,SCLK用于控制数据速度,MOSI将数据从树莓派发送到所连接的设备,而MISO则相反。
UART接口(就是图中的RXD,TXD,GND,就是RS232)
有使用Arduino的朋友一定听说过UART或Serial,通用异步收/发器接口用于将Arduino连接到为其编程的计算机上,也用于其他设备与 RX 和 TX 引脚之间的通信。如果树莓派在 raspi-config 中启用了串口终端,则可以使用这些引脚通过电脑来控制树莓派,也可以直接用于控制Arduino。
PWM接口
在树莓派上,所有的引脚都可以实现软件PWM,而GPIO12、GPIO13、GPIO18、GPIO19可以实现硬件脉宽调制。
GPIO(General Purpose I/O Ports)意思为通用输入/输出端口,通俗地说,就是一些引脚,可以通过它们输出高低电平或者通过它们读入引脚的状态-是高电平或是低电平。GPIO是个比较重要的概念,用户可以通过GPIO口和硬件进行数据交互(如UART),控制硬件工作(如LED、蜂鸣器等),读取硬件的工作状态信号(如中断信号)等。GPIO口的使用非常广泛。掌握了GPIO,差不多相当于掌握了操作硬件的能力。
树莓派有26个GPIO接口,其中有一部分是复用接口。
1、引脚3、5为IC总线复用接口
2、引脚7为(GCLK)全局时钟引脚复用接口
3、引脚19、21、23为SPI总线复用接口
4、引脚8、10为串口复用接口,TX发送,RX接收
5、引脚12、32、33、35为PWM复用接口
通过配置,这26个IO是既可以作为DI也可以作为DO使用的,Codesys在驱动上把复用的管脚都按接口功能使用了,所以在GPIOs_A_B里面软件上支持GPIO0~31,实际上只留了剩下的没有复用的作为IO点使用,可以根据需要配置。
要把这些IO真正用来控制设备,一般还要经过电平转换和增加负载能力的,除非是一些小的led什么的可以直接驱动,有兴趣搞明白这一块的,就可以自己制作PLC了,需要用到数字电子电路和模拟电子电路的知识,还没把这些还给老师的童鞋欢迎加入,当然了,万能的淘宝也有成品的继电器板买,用杜邦线一接马上就能驱动小马达了。
我们可以看到,Codesys支持树莓派的各种接口:
树莓派自带的好多接口在工控领域都不怎么用,简单介绍一下:
树莓派自带一个摄像头接口,很多人用来做机器视觉的应用,CodeSys也显示了这个Camera device,我没有摄像头,也没法测试是不是可以很简单的实现一些咱们PLC做不到的图像识别,有条件的同学可以继续努力;
树莓派还有一个显示器接口,可以接触摸屏,很方便的改造成的怀旧游戏机,这个也供感兴趣的同学研究,欢迎发帖展示成果啊;
对控制最有用的恐怕就是这个GPIO接口了,位置如下图所示,下面的图还标出了其中的串口(UART)的管脚:
这个GPIO可是功能强大,在作为通用IO的基础上还复用支持了很多功能:
I2C接口
I2C是由Philips公司开发的一种简单、双向二线制同步串行总线。它只需要两根线即可在连接于总线上的器件之间传送信息。树莓派通过I2C接口可控制多个传感器和组件。它们的通信是通过SDA(数据引脚)和SCL(时钟速度引脚)来完成的。每个从设备都有一个唯一的地址,允许与许多设备间快速通信。ID_EEPROM引脚也是I2C协议,它用于与HATs通信。
SPI接口
SPI是串行外设接口,用于控制具有主从关系的组件,采用从进主出和主进从出的方式工作,树莓派上SPI由SCLK、MOSI、MISO接口组成,SCLK用于控制数据速度,MOSI将数据从树莓派发送到所连接的设备,而MISO则相反。
UART接口(就是图中的RXD,TXD,GND,就是RS232)
有使用Arduino的朋友一定听说过UART或Serial,通用异步收/发器接口用于将Arduino连接到为其编程的计算机上,也用于其他设备与 RX 和 TX 引脚之间的通信。如果树莓派在 raspi-config 中启用了串口终端,则可以使用这些引脚通过电脑来控制树莓派,也可以直接用于控制Arduino。
PWM接口
在树莓派上,所有的引脚都可以实现软件PWM,而GPIO12、GPIO13、GPIO18、GPIO19可以实现硬件脉宽调制。
GPIO(General Purpose I/O Ports)意思为通用输入/输出端口,通俗地说,就是一些引脚,可以通过它们输出高低电平或者通过它们读入引脚的状态-是高电平或是低电平。GPIO是个比较重要的概念,用户可以通过GPIO口和硬件进行数据交互(如UART),控制硬件工作(如LED、蜂鸣器等),读取硬件的工作状态信号(如中断信号)等。GPIO口的使用非常广泛。掌握了GPIO,差不多相当于掌握了操作硬件的能力。
树莓派有26个GPIO接口,其中有一部分是复用接口。
1、引脚3、5为IC总线复用接口
2、引脚7为(GCLK)全局时钟引脚复用接口
3、引脚19、21、23为SPI总线复用接口
4、引脚8、10为串口复用接口,TX发送,RX接收
5、引脚12、32、33、35为PWM复用接口
通过配置,这26个IO是既可以作为DI也可以作为DO使用的,Codesys在驱动上把复用的管脚都按接口功能使用了,所以在GPIOs_A_B里面软件上支持GPIO0~31,实际上只留了剩下的没有复用的作为IO点使用,可以根据需要配置。
要把这些IO真正用来控制设备,一般还要经过电平转换和增加负载能力的,除非是一些小的led什么的可以直接驱动,有兴趣搞明白这一块的,就可以自己制作PLC了,需要用到数字电子电路和模拟电子电路的知识,还没把这些还给老师的童鞋欢迎加入,当然了,万能的淘宝也有成品的继电器板买,用杜邦线一接马上就能驱动小马达了。
[此贴子已经被作者于2020/5/14 21:14:49编辑过]