我有一个关于与倍福的 CP6606 进行串行通信的问题。我正在将 Twincat 3 版本 4022.16 与 HMI 上的 Windows CE 7 compact 结合使用。我已经安装了所有许可证。
对于学校,我必须通过集成 Sick CLV 610 条形码扫描仪来编程拾取和放置。(RS232)首先我需要用字符串“K”触发扫描仪。然后扫描仪将扫描并返回扫描结果。为了停止扫描,我将字符串“I”写入设备。
我将扫描仪连接到 CP6606 上的 Onboard Com1。我在 twincat 3 中使用以下配置:配置扫描仪。使用 RS232 好还是我应该使用 RS485 来完成这项工作?我的仿真模式对吗?
我使用 2 个任务。1 个标准任务和一个快速任务。快速任务将来自硬件的数据放在缓冲区中。标准任务处理来自缓冲区的数据。快速任务的配置可以在这里找到:FastTask
在我的快速任务程序中,我使用了这个功能块:FB_SerialLineControl
为了发送我的触发器“K”,我使用以下 2 个功能块:SendReceive。sSerial_SendText 包含字符串“K”,在 2 秒超时后,它将使用字符串“I”来停止进程。
我的程序没有任何错误。触发器只是没有到达扫描仪。我找不到任何适用于 Windows CE 7.0(仅 5.0 和 6.0)的 Com 端口分析器。我的 Com 设备的 IO 配置似乎有问题。
运行时版本会影响这个问题吗?在我的 PC 上,我使用 twincat 3 v4022.16(最新),在 CP 6606 上运行版本 4022.2。
我用一个名为“putty”的程序测试了硬件。当我在键盘上按“K”时,扫描仪会工作并在终端中显示代码。
我用一个名为“Terminal CE”的程序(与putty相同,但用于Windows CE)进行了相同的测试。测试也成功了,所以我认为问题不在硬件上,而在软件上。
您可以在此链接上找到该项目的源文件。 https://drive.google.com/file/d/1UjvCwl1u3sF9GF553zxO4dvl6VLIRLQx/view?usp=sharing
我希望有一个人可以帮助我。提前致谢!