完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
在活检枪上增加角度测量显示仪[1],使角度精确到0.1度,这样微型病灶的采样检测及化验成为可能,并且增加了诊断的可靠性和安全性,所以在活检枪上加上角度仪,非常有意义而且实用。
2.活检枪角度仪工作原理 活检枪角度仪的工作原理如图1所示:角度传感器SCA61T输出的是角度的数字信号,该数字信号为串行数据,要经过串并转换器件,将串行数据转换为并行数据,然后通过单片机的并行口将数据输入单片机,数据在单片机中经过处理之后,送到LED显示模块,将角度数据显示出来。角度传感器SCA61T所需要的触发脉冲信号由单片机控制产生。 |
|
|
|
3.角度仪的硬件设计
根据医院活检枪的测量要求,角度仪中的传感器采用芬兰VTI公司的最新款角度传感器SCA61T。串并转换和逻辑序列发生器件采用软件的方法实现。数据运算、控制显示采用单片机AT89S52[1]。LED显示模块采用四个数码管来实现。 3.1SCA61T传感器芯片的介绍 SCA61T是一种倾角传感器,当该传感器静止时,作用在它上面的只有重力加速度。重力和倾角传感器灵敏轴之间的夹角就是倾斜角。其测量的范围为-90度到+90度,输出信号有模拟和数字两种。其中数字信号为11位,该数字信号的精度可以达到0.088度,完全能够满足医用活检枪所要求的 0.1度。并且,该传感器内置温度补偿系统,可以直接写入和读取温度数据,还可以进行自检。下图为SCA61T[2]的控制功能表。 (1) 测量模式(MEAS)。上电后的标准工作模式。 (2) 读写温度数据模式。 (3) 读寄存器状态。 (4) 复位内置的数据输出存储器。 (5) X通道自测试。 (6) 读取X通道的加速度。数据的读取是通过SPI端口。读取存放在加速度寄存器的加速度信号。正常工作时,加速度寄存器X每150微秒加载一次。0代表负的角度,1代表正的角度。 在活检枪角度仪中,要得到的是角度的数字信号。根据上面的图2控制功能表,可以知道在SPI口要输入的控制命令数据为00010000。SPI接口共有三根线,一是时钟线(SCK),二是主出丛入线即 MOSI,三是主入从出线即MISO。这三根线和片选信号线(CSB)必须严格按照图3的时序,才能使传感器芯片正常工作,时序错误,SCA61T不会工作,甚至有可能将传感器芯片SCA61T烧坏。 当片选信号线(CSB)处于低电平时,数据通信才可以进行。每次数据的传输都是由CSB的下降沿开始,上升沿结束。 对于MISO数据,SCK的下降沿有效;对于MOSI数据,SCK的上升沿有效。先读取的为角度的符号位。当 COMMAND 命令一结束,就开始输出测量数据。 片选信号CSB为低电平有效。但是要输出稳定可靠的信号,每次测量CSB都要保持高电平至少150微秒。时钟信号SCK的上升沿触发数据的写入,下降沿触发数据的读取。在这种情况下,可以得出,要想获得某一时刻的角度数据至少需要19个时钟脉冲。当不需要读数据的时候,可以通过拉高片选信号CSB使传感器芯片处于未使能状态,即降低了功耗,又可以保护传感器芯片SCA61T的安全。上面的时序图也是编写传感器芯片驱动程序的严格标准。 3.2 单片机AT89S52与传感器芯片SCA61T的连接 单片机的P1口作为数据的输出口,连接到LED显示器,用于采集到的测量数据的显示。P3.0口接SCA61T的2脚,用于接受传感器输出的数字信号。P3.1口接传感器的1脚,用于产生传感器芯片的时钟脉冲。P2.7脚接传感器芯片的3脚,用于给SCA61T提供控制信号,来控制芯片的相关工作。上面的 P2.7、P3.0、P3.1脚通SCA61T的SPI接口相连,完成对传感器芯片的控制、驱动和对角度数据的采集。传感器SCA61T和单片机AT89S52[3]的其他外围电路请分别参考各自的使用手册。如3所示。 |
|
|
|
4. 软件模块的设计
在程序中,数据计算处理过程采用部分查表的方法。在数据的计算过程中,传感器芯片的片选信号始终保持高电平,为下次读取数据做准备。在整个数据的读取过程中,用定时器控制方波信号作为传感器的时钟信号,传感器读入数据时为上升沿触发,传感器输出数据时为下降沿触发。在这个过程中,必须保证方波的同步,这样就可以避免信号的丢失。 在活检枪倾角仪的设计中,要写入传感器的数据为8bit的传感器工作状态选择信号,要读取的数据为11bit的串行倾角数据,所以在程序中需要设计一个 19 位的不断循环的脉冲时钟信号。 单片机将从传感器采集到的角度数据进行处理后,要送往LED进行显示。对于显示的驱动和控制方法,可以采用顺序查询的方法,也可以采用中断的方法。这两种不同的显示方法,各自有各自的好处,应根据具体的情况来选择采用哪一种方法,以便达到最好的效果。 本设计采用了中断的方法。部分数据处理程序: num=gao[1]<<1; temp1=num|gao[2]; num1[6]=di[6]<<1; num1[5]=di[5]<<2; num1[4]=di[4]<<3; temp2=num1[4]|num1[5]|num1[6]|di[7]; switch(temp1) { case 0x00: shi=0x00; break; case 0x01: shi=0xe1; break; case 0x02: shi=0x1c2; break; case 0x03: shi=0x2a3; break; } xiao=table3[temp2]; ge=table2[temp3]; xianshi=shi+ge+xiao; shuzi(xianshi); 5.结论 该活检枪角度仪的精度为0.1度,达到了医用活检枪的测量标准。不仅方便了医生的使用,而且使得病理取样更加精确,提高了病理诊断的准确性和安全性。 |
|
|
|
只有小组成员才能发言,加入小组>>
如何使用STM32+nrf24l01架构把有线USB设备无线化?
2544 浏览 7 评论
请问能利用51单片机和nRF24L01模块实现实时语音无线传输吗?
2331 浏览 5 评论
3158 浏览 3 评论
2802 浏览 8 评论
为什么ucosii上移植lwip后系统进入了HardFault_Handler?
2761 浏览 4 评论
请教各位大咖:有没有接收频率32M左右的芯片推荐的?先感谢啦!
608浏览 1评论
853浏览 0评论
966浏览 0评论
620浏览 0评论
447浏览 0评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-23 15:10 , Processed in 1.319955 second(s), Total 84, Slave 67 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号