---
title: "A parcel sorting machine using W5500 with RT-Thread"
url: "https://maker.wiznet.io/chen/projects/a-parcel-sorting-machine-using-w5500-with-rt-thread/"
markdown_url: "https://maker.wiznet.io/chen/projects/a-parcel-sorting-machine-using-w5500-with-rt-thread/md"
type: "UCC: User Created Content"
author: "EEFocus"
author_url: "https://www.eefocus.com/circuit/1167350.html"
editor: "WIZnet"
editor_url: "https://maker.wiznet.io/"
original_author: "EEFocus"
original_url: "https://www.eefocus.com/circuit/1167350.html"
license: "Apache License 2.0 (Apache-2.0)"
published: "2022-12-05"
language: "en"
tags: ["W5500"]
hardware: ["WIZnet W5500"]
likes: 3
views: 592
comments: 0
source: "WIZnet Makers (https://maker.wiznet.io/)"
---

# A parcel sorting machine using W5500 with RT-Thread

> This is a design contest works based on ART-Pi using W5500 with RT-Thread

Original author: EEFocus (source: https://www.eefocus.com/circuit/1167350.html)

## Components

- **WIZnet W5500** x 1 ([docs](https://docs.wiznet.io/Product/Chip/Ethernet/W5500))

WIZnet parts: W5500 ([Datasheet](https://docs.wiznet.io/Product/Chip/Ethernet/W5500/datasheet?utm_source=maker&utm_medium=project&utm_campaign=w5500), [product hub](https://maker.wiznet.io/products/w5500/))

## Article

**方案介绍**

## 快递分拣设备--前端伸缩机

## **简介**

伸缩皮带输送机的使用，缩短了人工往返搬运物料的距离，可以缩短货物装卸货时间，降低劳动强度，减少货品损伤，降低装卸成本，提高工作效率，伸缩皮带输送机最先用于物流快递，烟草行业。目前伸缩机一般都用PLC来实现，一旦量大了，对于设备厂商来说，价格贵是一方面；还有很多客户想实时得知设备的运行状态，所以做了这款可以联网的伸缩机。

## **硬件说明**

![](https://file.eefcdn.com/circuit/FnqECbC5Ny5mMO8sGj95xFFnixS5)

本项目，主要实现ARTPI控制系统，执行系统，网络系统。控制系统驱动网络系统与上位机通信。上位机通过指令的发送，通过控制系统来控制执行系统完成伸综缩机上升，下降，伸出，缩回等功能；上位机也可以实时读取当前设备的运行状态。

1. 开发环境

**硬件**:ART-PI

**扩展板**：控制底板，W5500网络模块

**RT-Thread版本**：RT-Thread V 4.0.3

**开发工具及版本**：MDK 5.26

## **RT-Thread使用情况概述内核部分**：调度器，信号量，消息队列。

**调度器**：创建多个线程来实现不同的工作。

**信号量**：用来同步线程。

**消息队列**：用来实现线程之间传递的数据。

**组件部分**：SPI框架， SAL 套接字抽象层，LWIP

**软件包**：WIZnet，netdev,network-sample

本项目主要是两块功能：

1.网络通信

工控行业，还是以有线传输为主。本项目主要采用W5500网络模块，设备为TCP SERVER，与上位机通信，上位机为TCP CLIENT。采集当前信号状态。

2.输入输出控制

检测信号的输入和控制信号的输出。

## **软件框架说明**

![](https://file.eefcdn.com/circuit/FpUteKrnDeQn1YjkZ-7xQrqR03pv)

程序开始，等待各个模块的初始化成功，主任务同时在查询两个队列，一个是输入信号队列是否有数据过来，另外一个是网络队列是否有数据请示。如果有则进行处理，没有则任务实时查询。

软件模块的说明：

1.网络通信任务：TCPPROCESS_TASK(void *parameter)

主要是实时获取上位机的数据，与上位的数据进行收发处理。

2.输入输出任务： main(void)

主要检测IO口的输入输出功能。

3.信号处理任务：MASTER_TASK(void *parameter)

主要是通过接收前面两个任务的信号量，进行数据的判断并数据发送。

## **硬件现场图**

![](https://file.eefcdn.com/circuit/Fo5Pp64fMa82GWuoIMqpBXilM0k5)

视频：

## **比赛感悟**

非常感谢这次RT-Thread公司能够提供ART-PI开发板，而且ART-PI非常适合上手，技术支持也做得非常到位。以为一直对RTThread这个系统用得不是很熟练，因为我们公司主要是以做工控为主的，基本上都 是以FreeRTOS为主，因为FreeRTOS更加贴近底层，自己更好掌握，用了RTThread，因为封装了太多层了，生怕万一出了什么问题解决不了。通过这次的大赛，使我增加了对使用RTThread系统 的信心，因为软件包真的太好用了，当然也希望有更多的人，包括自己能够有能力和机会分享和维护软件包。最后感谢主办方提供了这么好的一个平台！

## **相关文件（3）**

下载所有附件

底板2020119.PcbDoc

下载

描述：底板

源代码.txt

下载

描述：gitee链接

快递分拣设备--前端伸缩机.docx

下载

---

Source: https://maker.wiznet.io/chen/projects/a-parcel-sorting-machine-using-w5500-with-rt-thread/
