lowermachine/README.md
2024-05-07 21:06:45 +08:00

71 lines
4.0 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 下位机
下位机按上位机指令根据传送带脉冲等触发相机完成刨花板的缺陷分选任务。本次下位机不连接阀板是由PLC翻板机的机械装置作为执行器对木板进行分选。采用的硬件是[Alinx](https://www.alinx.com/)的AC7Z100C ZYNQ开发板。
本IO扩展版提供了
- xxxxxx
接线时12V电源连接到IO扩展板的电源接口相机线应连接相机触发接口`TRIG1`、`TRIG2`和对应的`GND`接口,编码器线应连接在编码器输入接口`E1`和对应的`GND`接口,物体传感器应连接输入接口`E3`和对应的`GND`接口。注意底板不连接任何外部电源。
开发和部署说明见[doc/develop_and_deploy.md](doc/develop_and_deploy.md)
## 目录结构
- doc为说明文档包括开发和部署细节、硬件设计的描述等
- [develop_and_deploy.md](doc/develop_and_deploy.md)为开发和部署说明,首先看这个文档
- [hardware_description.md](doc/hardware_description.md)为PL端逻辑设计说明阐述了硬件工作的整体流程
- [pl_reference_mannual.md](doc/pl_reference_mannual.md)为PL端逻辑在AXI总线上映射的寄存器参考手册
- [sim_uppermachine_manual.md](doc/sim_uppermachine_manual.md)为模拟上位机运行的参考手册
- script为配置系统、安装环境、安装可执行文件、卸载可执行文件等的脚本
关于脚本的使用,见[doc/develop_and_deploy.md](doc/develop_and_deploy.md)
- target.sh为嵌入式linux中自动启动应用程序脚本
- load\*.sh为嵌入式linux中加载驱动的脚本
- .bashrc为嵌入式linux中配置环境变量的脚本
- protocol为上位机和下位机通信的协议
- hardware下位机主板、接口板、底板等的硬件设计
- pl_platform为PL端硬件设计
- xme0724ioextend为IO叠板的原理图和PCB
- source为AC7Z100C板子上运行的源程序和模拟上位机程序
- liunx_app为Linux上运行的应用程序即业务逻辑
- linux_driver为Linux上的驱动用于控制自定义的PL端硬件其中drv_test结尾的目录为相应驱动模块的测试应用程序
- petalinux_config为petalinux工具在编译u-boot、kernel、rootfs前进行的配置
- petalinux_devicetree为本次自定义的Linux设备树文件部分其余设备树为自动生成的
- petalinux_hwdescription为petalinux所使用的硬件描述文件包含了vivado工程中的比特流等信息
- sim_uppermachine_manul为基于pyside6所编写的软件用于模拟上位机发送指令方便调试
## 版本
由于经常有不同类型的新要求出现,比如分选糖果、分选烟梗、同为糖果也具有不同的参数,因此不同的下位机型号(注意不是更新,比如同一台机器需要设置新的参数)应建立不同的分支,**主分支无实际意义**
分支命名规则(不使用中文,小写无空格)
```shell
b分支编号-p生产环境项目名-t分选对象[-其他特点1[-其他特点2...]]
```
中括号在这里表示可省略的项,中括号本身不应出现在实际命名中,其他特点应字母打头,可有多个,"-"相连
使用Git的tag功能定义版本注意连着tag一起pushGithub仓库的release功能同步发布最新版本
版本号遵循定义如下(不使用中文,小写无空格)
```shell
b分支编号-d文档版本-hPCB设计版本-lFPGA设计版本-p协议版本-s脚本版本-aAPP代码版本-i驱动版本-c系统编译配置版本-e设备树版本
```
分支编号和分支命名中编号一致。各部分版本应在相应目录下创建文件注明,比如`2.1`版本的PCB设计PCB工程目录中建立`version`文本文件,内容为文本`2.1`。对于涉及整体设计的大改动版本号加`1`,其余改动版本号加`0.1`。每个分支的版本各自独立,新分支的版本从`1.0`起计算,也可从建立分支处原有版本起计算
## 作者
作者徐耀不管有没有毕业7x24欢迎提着示波器的师弟师妹来问问题