基于图像处理的全上肢康复外骨骼
在学习神经网络与FPGA的时候,受到图像处理与柔性电子皮肤的启发,想要将图像与外骨骼相结合,达到降本增效的效果。
主题框图

图像采集与控制
此模块采用的是采用数据流处理的方式实现设计,摄像头首先对像素数据进行采集,将采集后的数据进行传输给FPGA,由FPGA对像素数据进行算法计算,数据分析,结果比对,最后,通过显示器对数据进行输出。








效果:
https://www.bilibili.com/video/BV1Qh411z7Dv/?spm_id_from=333.788.recommend_more_video.0&vd_source=4a411c60a028970e914d351e03f79f61
网络传输模块
FPGA侧主要功能为建立TCP的server,PC端client和FPGA侧连接之后,FPGA端将以8B为数据单位,从0-ff_ff_ff_ff _ff_ff_ff_ff向PC端发送数据,PC端接收为软件工程师侧的socket接口。测试中FPGA侧MAC为0708090a0b0c,ip为192.168.1.254,PC侧MAC为00_0E_C6_7B_CE_89,ip为192.168.1.100。
数据包长度为1460(纯数据部分)
测试功能OK的情况下,目前最优传输平均速度为670Mb/S



传输过程
1.数据生成:

2.报文发送
发送部分取决于两个寄存器:state_tx,为tx报文的小状态机,trans_type为发送类型的指示
State_tx分为:空闲、发送报文头部、发送报文数据部分、发送重发报文4种类型
trans_type分为:无数据部分头,无数据部分应答,有数据部分,重发4种类型
3.报文接收
输入tcp_server模块的报文信号为:
din_vld 输入数据有效
din 输入数据
din_eop输入报文的最后一个字节
din_sop输入报文的第一个字节 ;
rx_din将数据拼接之后,如果数据部分有效则写入fifo,否则写到rx_head寄存器