防宠物踩踏式报警器及其轮廓法测量面积区分脚型的方法.pdf

上传人:e1 文档编号:821323 上传时间:2018-03-14 格式:PDF 页数:17 大小:634.38KB
返回 下载 相关 举报
摘要
申请专利号:

CN201010228515.9

申请日:

2010.07.16

公开号:

CN102339513A

公开日:

2012.02.01

当前法律状态:

终止

有效性:

无权

法律详情:

未缴年费专利权终止IPC(主分类):G08B 13/10申请日:20100716授权公告日:20130612终止日期:20140716|||授权|||著录事项变更IPC(主分类):G08B 13/10变更事项:发明人变更前:曾艺 张文娟 张海明变更后:曾艺|||实质审查的生效IPC(主分类):G08B 13/10申请日:20100716|||公开

IPC分类号:

G08B13/10; G01B7/28

主分类号:

G08B13/10

申请人:

重庆工商大学

发明人:

曾艺; 张文娟; 张海明

地址:

400067 重庆市南岸区学府大道19号重庆工商大学科研处

优先权:

专利代理机构:

代理人:

PDF下载: PDF下载
内容摘要

防宠物踩踏式报警器及其轮廓法测量面积区分脚型的方法包括防宠物踩踏式报警器与轮廓法测量面积区分脚型的方法两部分;后者体现于轮廓法测量面积以区分脚型程序,前者由一个长方形框架、电池组、单片机系统、串入并出电路、并入串进电路与音乐电路组成,其中,长方形框架的上部和底部分别设置有列、行电极组,其导线依序分别连接到并入串进电路的各个并行输入端与串入并出电路的各个并行输出端。按照行、列两电极组导线的排列建立二维坐标系,借助单片机扫描检测被踩踏的区域、逐块跟踪它们的轮廓、对轮廓内区域数格子算面积、判断脚型并决定是否发出报警声。所述测量面积的方法针对一块一块被踩踏的区域,适用于防盗报警工作。

权利要求书

1: 防宠物踩踏式报警器及其轮廓法测量面积区分脚型的方法, 其特征是 : 所述防宠物 踩踏式报警器由一个长方形框架、 电池组、 单片机系统、 串入并出电路、 并入串进电路、 音乐 电路以及轮廓法测量面积以区分脚型程序组成 ; 其中, 长方形框架的上部和底部各有一组 电极, 分别称之为列电极组和行电极组, 每一组电极包括 72 根彼此独立、 间距均匀、 裸露的 金属导线, 两组电极的导线排列的方向相互垂直, 列电极组的导线依序分别连接到并入串 进电路的各个并行输入端, 行电极组的导线依序分别连接到串入并出电路的各个并行输出 端, 单片机系统装载有轮廓法测量面积以区分脚型程序, 其输出口线 P3.7 连接到音乐电路 的输入端, 电池组作为本装置的电源。
2: 根据权利要求 1 所述的防宠物踩踏式报警器及其轮廓法测量面积区分脚型的方法, 其特征是 : 所述长方形框架的上部和底部的两组电极由该框架的两侧绝缘隔离并支撑着。 3. 根据权利要求 1 所述的防宠物踩踏式报警器及其轮廓法测量面积区分脚型的方法, 其特征是 : 所述单片机系统包括一块单片机及其晶振电路和上电复位电路、 随机存储器电 路, 其中, 随机存储器电路由一块 74HC373 和 64KB 的 RAM 组成。 4. 根据权利要求 1 所述的防宠物踩踏式报警器及其轮廓法测量面积区分脚型的方法, 其特征是 : 所述串入并出电路由 9 块 74HC164 级联组成 : 第一块 74HC164 的信号串行输入端 A 连接到单片机系统的输出口线 P1.2, 其最高位输出端 QH 连接到第二块的信号串行输入端 A, 第二块的最高位输出端 QH 连接到第三块的信号串行输入端 A, 依次类推, 共产生 8( 位 / 块 )×9 块= 72 位的信号并行输出端 ; 9 块 74HC164 的清零端与信号串行输入端 B 都连接 到电池组的正极, 它们的时钟信号输入端都连接到单片机系统的输出口线 P1.3。 5. 根据权利要求 1 所述的防宠物踩踏式报警器及其轮廓法测量面积区分脚型的方法, 其特征是 : 所述并入串进电路由 9 块 74HC165 级联组成 : 最后一块 74HC165 的并入串出信号 端 QH 连接到前一块的信号串行输入端 DS, 依次类推, 共产生 8( 位 / 块 )×9 块= 72 位的信 号并行输入端, 每一位信号并行输入端还各自连接一个下拉电阻到电池组的负极, 第一块 74HC165 的并入串出信号端 QH 连接到单片机系统的输入口线 P1.5, 这 9 块 74HC165 的并入 数据装载控制端 /PL 都连接到单片机系统的输出口线 P1.6, 它们的时钟信号输入端都连接 到单片机系统的输出口线 P1.7, 它们的时钟使能输入端 /CE 都连接到电池组的负极。 6. 根据权利要求 1 所述的防宠物踩踏式报警器及其轮廓法测量面积区分脚型的方法, 其特征在于, 所述轮廓法测量面积区分脚型的方法包含在所述轮廓法测量面积以区分脚型 程序中, 用于区分人与小动物的脚型, 其步骤如下 : 步骤一、 初始化单片机 : MOV_SP, 2FH ’ 堆栈初值, CLR_P1.2, P1.3, P1.7, P3.7 ’ 准备输出信号, SETB_P1.5, P1.6 ’ 准备输入信号, CLR_F0 ’ 初始化跟踪区域轮廓工作结束的标志位, 步骤二、 初始化程序 : CLR_R5, CLR_R6 ’ R5, R6 分别为格子计数器的低字节和高字节, MOV_R1, #AL, MOV_R2, #AH ’ RAM 中后部开辟有小块临时存储区, 用于存储被 跟踪区域的轮廓上坐标点的坐标, #AL, #AH 分别为该区域的起始地址之低、 高字节, R1, R2 2 分别为 RAM 中临时存储区地址指针的低字节和高字节寄存器, MOV_DPL, #AL, MOV_DPH, #AH MOV_R0, #RAM0, MOV_A, #00H ’ #RAM0 为 RAM 中临时存储区的大小, Loop0 : MOVX_@DPTR, A ’ 清零 RAM 中临时存储区中的一个单元, INC_DPTR ’ 指向下一单元, DJNZ_R0, Loop0 ’ R0 为循环计数器, Loop1 : MOV_R0, #Number_COL ’ Number_COL 为列电极组中导线的数目, Loop2 : MOV_R3, #Number_ROW ’ Number_ROW 为行电极组中导线的数目, SETB_P1.2, NOP, CLR_P1.2 ’ 清零串入并出电路的 9 块 74HC164 的输出端, DJNZ_R3, Loop2 ’ R3 为循环计数器, DJNZ_R0, Loop1 ’ R0 为循环计数器, MOV_DPH, #00H, MOV_DPL, #00H’ 初始化数据指针 DPTR, ’ 分开为两个 8 位的 x, y 坐标指针, 步骤三、 开始扫描检测被踩踏的区域 : 1) 通过单片机对行电极组中的第一根导线输出一个高电平, 然后, 逐根检测列电极组 中导线的电平, 其低、 高电平分别以 #00H, #01H 表示且存储之 : MOV_@DPTR, #00H 或 MOV_@ DPTR, #01H, 其中, 每检测完一根列电极组导线, y 坐标指针就指向下一根列电极组导线 : INC_DPL, 如果检查完毕列电极组中的全部导线, 即 DPL = Number_COL, 把 x, y 坐标指针指向下 一根行电极组导线 : INC_DPH, MOV_DPL, #00H ; 2) 通过单片机对行电极组中的下一根导线输出一个高电平, 然后, 逐根检测列电极组 中导线的电平, 其低、 高电平分别以 #00H, #01H 表示且存储之, 其中, 每检测完一根列电极 组导线, y 坐标指针就指向下一根列电极组导线, 如果检查完毕列电极组中的全部导线, 即 DPL = Number_COL, 把 x, y 坐标指针指向下 一根行电极组导线 ; 3) 判断行电极组中当前处于高电平的导线是否超出其最后一根 : (a)DPH < Number_ROW, 不是最后一根, 跳转到本步骤之 2) 继续进行扫描检测 ; (b)DPH = Number_ROW, 已超出最后一根, 执行下一步骤 ; 步骤四、 跟踪被踩踏区域的轮廓 : 1) 初始化 x, y 坐标指针 DPTR : MOV_DPH, #01H, MOV_DPL, #01H ; 2) 暂存当前 x, y 坐标指针 DPTR, 称之为当前跟踪坐标指针, 从 RAM 取出并查看当前位 置的数据 : MOV_A, @DPTR : (a) 如果该数据为 #00H, 执行本步骤四之 3) ; (b) 如 果 该 数 据 为 #01H, 查 看 位 于 当 前 坐 标 位 置 的 上、 右、 下与左方的四邻 {(DPH ← DPH-1, DPL)、 (DPH, DPL ← DPL+1)、 (DPH ← DPH+1, DPL) 与 (DPH, DPL ← DPL-1)} 处的四个数据, 即按照跟踪区域轮廓的规则获取与行、 列电极组导线被踩踏所致接触的区 域对应的轮廓 ; 然后, 运用 “数格子量面积的方法” , 获得被踩踏区域的面积 : S(R7) ; 如果被踩踏区域的面积 S(R7) ≥ Area, (Area 为某个预定值 ), 就判断为受到人的脚的 3 踩踏, 并发出警报信号 : SETB_P3.7, 延时约十秒, 再撤除该报警信号 : CLR_P3.7 ; 执行步骤 五; 步骤五、 恢复当前 x, y 坐标指针 DPTR 为当前跟踪坐标指针, 把它指向下一个坐标点 : 如果当前坐标点已经处于本行最后的位置, 即 DPL = Number_COL-1 时, 下一个坐标点为 (DPH ← DPH+1, DPL ← 1), 否则, 下一个坐标点为 (DPH, DPL ← DPL+1) ; 步骤六、 如果 x, y 坐标指针 DPTR 尚未指向最后一行, 即: DPH < Number_ROW-1, 跳转本 步骤四之 2), 继续跟踪被踩踏区域的轮廓, 否, 则结束跟踪被踩踏区域轮廓的工作 ; 步骤七、 跳转到步骤一, 开始新的一轮扫描检测工作。 7. 根据权利要求 1 所述的防宠物踩踏式报警器及其轮廓法测量面积区分脚型的方法, 其特征在于, 所述轮廓法测量面积以区分脚型程序之步骤四所述跟踪区域轮廓的规则包 括: 1) 被跟踪区域的特征是 : “被跟踪区域内的每一个坐标点都对应着数据 #01H, 需要被 跟踪的区域之外或需要被跟踪的区域之间的坐标点都对应着数据 #00H” ; 2) 启动跟踪轮廓定时器, 如果该定时器的计时时间到了预定的数置, 复位单片机 ; 3) 当前坐标位置对应的数据为 #01H, 查看当前坐标位置的上、 右、 下与左方四个邻点 对应的数据的关系, 决定当前坐标位置的移动方向, 该移动方向经过的路径就形成该区域 的轮廓, 有关移动当前坐标位置的规则如下 : a) 如果其右方邻点对应的数据为 #01H, 其上、 下、 左方邻点对应的数据都为 #00H, 就把 当前坐标位置移向其右方邻点处 ; b) 如果其下方邻点对应的数据为 #01H, 其上、 右、 左方邻点对应的数据都为 #00H, 就把 当前坐标位置移向其下方邻点处 ; c) 如果其左方邻点对应的数据为 #01H, 其上、 右、 下方邻点对应的数据都为 #00H, 就把 当前坐标位置移向其左方邻点处 ; d) 如果其上方邻点对应的数据为 #01H, 其右、 下、 左方邻点对应的数据都为 #00H, 就把 当前坐标位置移向其上方邻点处 ; e) 如果其右、 下方邻点对应的数据都为 #01H, 其左、 上方邻点对应的数据都为 #00H, 就 把当前坐标位置移向其右方邻点处 ; f) 如果其下、 左方邻点对应的数据都为 #01H, 其上、 右方邻点对应的数据都为 #00H, 就 把当前坐标位置移向其下方邻点处 ; g) 如果其左、 上方邻点对应的数据都为 #01H, 其右、 下方邻点对应的数据都为 #00H, 就 把当前坐标位置移向其左方邻点处 ; h) 如果其上、 右方邻点对应的数据都为 #01H, 其下、 左方邻点对应的数据都为 #00H, 就 把当前坐标位置移向其上方邻点处 ; i) 如果其上、 下方邻点对应的数据都为 #01H, 其右、 左方邻点对应的数据都为 #00H, 且 其由其左方邻点移动而来, 就把当前坐标位置移向其上方邻点处 ; j) 如果其上、 下方邻点对应的数据都为 #01H, 其右、 左方邻点对应的数据都为 #00H, 且 其由其右方邻点移动而来, 就把当前坐标位置移向其下方邻点处 ; k) 如果其右、 左方邻点对应的数据都为 #01H, 其上、 下方邻点对应的数据都为 #00H, 且 其由其上方邻点移动而来, 就把当前坐标位置移向其右方邻点处 ; 4 l) 如果其右、 左方邻点对应的数据都为 #01H, 其上、 下方邻点对应的数据都为 #00H, 且 其由其下方邻点移动而来, 就把当前坐标位置移向其左方邻点处 ; m) 如果其上方邻点对应的数据为 #00H, 其余三个邻点对应的数据都为 #01H, 就把当前 坐标位置移向其右方邻点处 ; n) 如果其右方邻点对应的数据为 #00H, 其余三个邻点对应的数据都为 #01H, 就把当前 坐标位置移向其下方邻点处 ; o) 如果其下方邻点对应的数据为 #00H, 其余三个邻点对应的数据都为 #01H, 就把当前 坐标位置移向其左方邻点处 ; p) 如果其左方邻点对应的数据为 #00H, 其余三个邻点对应的数据都为 #01H, 就把当前 坐标位置移向其上方邻点处 ; q) 如果当前坐标位置的上、 右、 下与左方四个邻点对应的四个数据都是 #00H, 四个邻 点中也没有出现本跟踪区域轮廓过程所获得的最前面的 5 个位置坐标之一, 这时, 尝试退 出该 “奇异的隅角” : 把当前坐标位置对应的数据置为 #00H, 从 RAM 内的临时存储区取出最 后存进去的坐标值, 把该坐标值赋予当前坐标位置指针即 (DPH, DPL), 也就是退回到前一个 位置的坐标处, 然后, 按照上述跟踪区域轮廓的规则继续跟踪下一个曲线轮廓点, 如果能够 找到下一个曲线轮廓点, 就继续跟踪区域轮廓的工作, 否则, 所遇到的 “奇异的隅角” 表明不 存在封闭、 连续的轮廓曲线, 即没有形成被踩踏的区域, 这时, 清零 RAM 内的临时存储区, 初 始化 RAM 中临时存储区地址指针寄存器 R1, R2, 设置跟踪区域轮廓工作结束的标志位 : SETB_ F0, 结束本轮跟踪区域轮廓的工作 ; r) 如果当前坐标位置的上、 右、 下与左方四个邻点对应的四个数据都是 #00H, 四个邻 点中出现了本跟踪区域轮廓过程所获得的最前面的 5 个位置坐标之一, 这时, 清零 RAM 内的 临时存储区, 初始化 RAM 中临时存储区地址指针寄存器 R1, R2, 设置跟踪区域轮廓工作结束 的标志位 : SETB_F0, 结束本轮跟踪区域轮廓的工作 ; 4) 每次移动当前坐标位置之前, 根据 RAM 中临时存储区地址指针寄存器 R1, R2 把当前 位置的坐标 (DPH, DPL) 依序存储在 RAM 内的临时存储区, 然后使得 RAM 中临时存储区地址 指针寄存器 R1, R2 指向下一处存储单元 ; 5) 每次移动当前坐标位置之前, 把当前坐标位置对应的数据改写成 #FFH ; 6) 上述诸规则中, 所述数据 #00H 与非 #01H 的其它数据等效。 8. 根据权利要求 1 所述的防宠物踩踏式报警器及其轮廓法测量面积区分脚型的方法, 其特征在于, 所述轮廓法测量面积以区分脚型程序之步骤四关于数格子量面积的方法包括 下述步骤 : 步骤一、 初始化 x, y 坐标指针 DPTR : MOV_DPH, #00H, MOV_DPL, #00H ; 步骤二、 从 RAM 取出并查看当前位置的数据 : MOV_A, @DPTR, (a) 如果该数据不等于 #01H, 跳到本方法之步骤三 ; (b) 如果它等于 #01H, 先查看该坐标位置是否属于轮廓的包围之中 : 否, 则跳到本方法之步骤三 ; 是, 则 查 看 当 前 坐 标 位 置 的 正 下 方 (DPH ← DPH+1, DPL)、 左 下 角 (DPH ← DPH+1, DPL ← DPL-1) 两处的数据是否等于 #01H 或 #FFH, 是, 则格子计数器 R6R5 加 1 ; 还要查看当 前坐标位置的右邻 (DPH, DPL ← DPL+1) 对应的数据是否等于 #01H : 5 是, 跳转本方法之步骤三 ; 否, 进一步查看当前坐标位置的正下方 (DPH ← DPH+1, DPL)、 右下角 (DPH ← DPH+1, DPL ← DPL+1) 两处的数据是否等于 #01H 或 #FFH, 是, 则格子计数器 R6R5 也加 1 ; 若当前坐标位置位于边上的第一行、 第一列、 最后一行或最后一列, 则当前坐标位置的 正下方、 左下角、 右邻与右下角在 RAM 中没有相应的数据, 此时其坐标的特点是 DPH < 0、 DPL < 0、 DPH = Number_ROW 或 DPL = Number_COL, 权当这些坐标点处的数据为 #00H ; 步骤三、 x, y 坐标指针 DPTR 指向当前坐标位置的下一个坐标点 : 如果当前坐标点已经 超出本行倒数第一列, 即: DPL = Number_COL 时, 下一个坐标点为 (DPH ← DPH+1, DPL ← 0), 否则, 下一个坐标点为 (DPH, DPL ← DPL+1) ; 步骤四、 如果 x, y 坐标指针 DPTR 尚未超出倒数第一行, 即: DPH < Number_ROW, 跳转本 方法之步骤二, 继续本次数格子量面积的工作 ; 否, 则计算被踩踏的区域的面积 S(R7) = R6R5×Ssquare, 其中, Ssquare 为一个格子的面积, 由行、 列电极组内导线的间距决定, 清零格子计数器 R6R5, 结束本次数格子量面积的工作。 9. 根据权利要求 1 所述的防宠物踩踏式报警器及其轮廓法测量面积区分脚型的方法, 其特征在于, 所述轮廓法测量面积以区分脚型程序之步骤四关于数格子量面积的方法所述 “查看该坐标位置是否属于轮廓的包围之中” 的实施方法包括下述步骤 : 步骤一、 称当前位置为目标位置, 把其 x, y 坐标指针 DPTR 指向目标位置的左方, 逐个坐 标点地取出它们对应的数据, 即: DEC_DPL, MOVX_A, @DPTR, 并逐个坐标点地查看该数据是否 等于 #FFH : 如果遇到等于 #FFH 的坐标点, 跳到本实施方法之步骤二, 继续查看工作 ; 如果进行到 DPL = 0 还没有遇到等于 #FFH 的坐标点, 表明目标位置没有在轮廓的包围 之中, 建立标志 : F1 = 0, 结束本查看工作 ; 步骤二、 把 x, y 坐标指针 DPTR 指向目标位置的右方, 逐个坐标点地取出它们对应的数 据, 即: INC_DPL, MOVX_A, @DPTR, 并逐个坐标点地查看该数据是否等于 #FFH : 如果遇到等于 #FFH 的坐标点, 跳到本实施方法之步骤三, 继续查看工作 ; 如果进行到 DPL = Number_COL-1 还没有遇到等于 #FFH 的坐标点, 表明目标位置没有 在轮廓的包围之中, 建立标志 : F1 = 0, 结束本查看工作 ; 步骤三、 把 x, y 坐标指针 DPTR 指向目标位置的上方, 逐个坐标点地取出它们对应的数 据, 即: DEC_DPH, MOVX_A, @DPTR, 并逐个坐标点地查看该数据是否等于 #FFH : 如果遇到等于 #FFH 的坐标点, 跳到本实施方法步骤四, 继续查看工作 ; 如果进行到 DPH = 0 还没有遇到等于 #FFH 的坐标点, 表明目标位置没有在轮廓的包围 之中, 建立标志 : F1 = 0, 结束本查看工作 ; 步骤四、 把 x, y 坐标指针 DPTR 指向目标位置的下方, 逐个坐标点地取出它们对应的数 据, 即: INC_DPH, MOVX_A, @DPTR, 并逐个坐标点地查看该数据是否等于 #FFH : 如果遇到等于 #FFH 的坐标点, 说明该目标位置位于 #FFH 所标记的轮廓所包围的区域 内, 建立标志 : F1 = 1, 结束本查看工作 ; 如果进行到 DPH = Number_ROW-1 还没有遇到等于 #FFH 的坐标点, 表明目标位置没有 在轮廓的包围之中, 建立标志 : F1 = 0, 结束本查看工作。
3: 7 连接到音乐电路 的输入端, 电池组作为本装置的电源。 2. 根据权利要求 1 所述的防宠物踩踏式报警器及其轮廓法测量面积区分脚型的方法, 其特征是 : 所述长方形框架的上部和底部的两组电极由该框架的两侧绝缘隔离并支撑着。 3. 根据权利要求 1 所述的防宠物踩踏式报警器及其轮廓法测量面积区分脚型的方法, 其特征是 : 所述单片机系统包括一块单片机及其晶振电路和上电复位电路、 随机存储器电 路, 其中, 随机存储器电路由一块 74HC373 和 64KB 的 RAM 组成。
4: 根据权利要求 1 所述的防宠物踩踏式报警器及其轮廓法测量面积区分脚型的方法, 其特征是 : 所述串入并出电路由 9 块 74HC164 级联组成 : 第一块 74HC164 的信号串行输入端 A 连接到单片机系统的输出口线 P1.2, 其最高位输出端 QH 连接到第二块的信号串行输入端 A, 第二块的最高位输出端 QH 连接到第三块的信号串行输入端 A, 依次类推, 共产生 8( 位 / 块 )×9 块= 72 位的信号并行输出端 ; 9 块 74HC164 的清零端与信号串行输入端 B 都连接 到电池组的正极, 它们的时钟信号输入端都连接到单片机系统的输出口线 P1.3。
5: 根据权利要求 1 所述的防宠物踩踏式报警器及其轮廓法测量面积区分脚型的方法, 其特征是 : 所述并入串进电路由 9 块 74HC165 级联组成 : 最后一块 74HC165 的并入串出信号 端 QH 连接到前一块的信号串行输入端 DS, 依次类推, 共产生 8( 位 / 块 )×9 块= 72 位的信 号并行输入端, 每一位信号并行输入端还各自连接一个下拉电阻到电池组的负极, 第一块 74HC165 的并入串出信号端 QH 连接到单片机系统的输入口线 P1.5, 这 9 块 74HC165 的并入 数据装载控制端 /PL 都连接到单片机系统的输出口线 P1.6, 它们的时钟信号输入端都连接 到单片机系统的输出口线 P1.7, 它们的时钟使能输入端 /CE 都连接到电池组的负极。
6: 根据权利要求 1 所述的防宠物踩踏式报警器及其轮廓法测量面积区分脚型的方法, 其特征在于, 所述轮廓法测量面积区分脚型的方法包含在所述轮廓法测量面积以区分脚型 程序中, 用于区分人与小动物的脚型, 其步骤如下 : 步骤一、 初始化单片机 : MOV_SP, 2FH ’ 堆栈初值, CLR_P1.2, P1.3, P1.7, P3.7 ’ 准备输出信号, SETB_P1.5, P1.6 ’ 准备输入信号, CLR_F0 ’ 初始化跟踪区域轮廓工作结束的标志位, 步骤二、 初始化程序 : CLR_R5, CLR_R6 ’ R5, R6 分别为格子计数器的低字节和高字节, MOV_R1, #AL, MOV_R2, #AH ’ RAM 中后部开辟有小块临时存储区, 用于存储被 跟踪区域的轮廓上坐标点的坐标, #AL, #AH 分别为该区域的起始地址之低、 高字节, R1, R2 2 分别为 RAM 中临时存储区地址指针的低字节和高字节寄存器, MOV_DPL, #AL, MOV_DPH, #AH MOV_R0, #RAM0, MOV_A, #00H ’ #RAM0 为 RAM 中临时存储区的大小, Loop0 : MOVX_@DPTR, A ’ 清零 RAM 中临时存储区中的一个单元, INC_DPTR ’ 指向下一单元, DJNZ_R0, Loop0 ’ R0 为循环计数器, Loop1 : MOV_R0, #Number_COL ’ Number_COL 为列电极组中导线的数目, Loop2 : MOV_R3, #Number_ROW ’ Number_ROW 为行电极组中导线的数目, SETB_P1.2, NOP, CLR_P1.2 ’ 清零串入并出电路的 9 块 74HC164 的输出端, DJNZ_R3, Loop2 ’ R3 为循环计数器, DJNZ_R0, Loop1 ’ R0 为循环计数器, MOV_DPH, #00H, MOV_DPL, #00H’ 初始化数据指针 DPTR, ’ 分开为两个 8 位的 x, y 坐标指针, 步骤三、 开始扫描检测被踩踏的区域 : 1) 通过单片机对行电极组中的第一根导线输出一个高电平, 然后, 逐根检测列电极组 中导线的电平, 其低、 高电平分别以 #00H, #01H 表示且存储之 : MOV_@DPTR, #00H 或 MOV_@ DPTR, #01H, 其中, 每检测完一根列电极组导线, y 坐标指针就指向下一根列电极组导线 : INC_DPL, 如果检查完毕列电极组中的全部导线, 即 DPL = Number_COL, 把 x, y 坐标指针指向下 一根行电极组导线 : INC_DPH, MOV_DPL, #00H ; 2) 通过单片机对行电极组中的下一根导线输出一个高电平, 然后, 逐根检测列电极组 中导线的电平, 其低、 高电平分别以 #00H, #01H 表示且存储之, 其中, 每检测完一根列电极 组导线, y 坐标指针就指向下一根列电极组导线, 如果检查完毕列电极组中的全部导线, 即 DPL = Number_COL, 把 x, y 坐标指针指向下 一根行电极组导线 ; 3) 判断行电极组中当前处于高电平的导线是否超出其最后一根 : (a)DPH < Number_ROW, 不是最后一根, 跳转到本步骤之 2) 继续进行扫描检测 ; (b)DPH = Number_ROW, 已超出最后一根, 执行下一步骤 ; 步骤四、 跟踪被踩踏区域的轮廓 : 1) 初始化 x, y 坐标指针 DPTR : MOV_DPH, #01H, MOV_DPL, #01H ; 2) 暂存当前 x, y 坐标指针 DPTR, 称之为当前跟踪坐标指针, 从 RAM 取出并查看当前位 置的数据 : MOV_A, @DPTR : (a) 如果该数据为 #00H, 执行本步骤四之 3) ; (b) 如 果 该 数 据 为 #01H, 查 看 位 于 当 前 坐 标 位 置 的 上、 右、 下与左方的四邻 {(DPH ← DPH-1, DPL)、 (DPH, DPL ← DPL+1)、 (DPH ← DPH+1, DPL) 与 (DPH, DPL ← DPL-1)} 处的四个数据, 即按照跟踪区域轮廓的规则获取与行、 列电极组导线被踩踏所致接触的区 域对应的轮廓 ; 然后, 运用 “数格子量面积的方法” , 获得被踩踏区域的面积 : S(R7) ; 如果被踩踏区域的面积 S(R7) ≥ Area, (Area 为某个预定值 ), 就判断为受到人的脚的 3 踩踏, 并发出警报信号 : SETB_P3.7, 延时约十秒, 再撤除该报警信号 : CLR_P3.7 ; 执行步骤 五; 步骤五、 恢复当前 x, y 坐标指针 DPTR 为当前跟踪坐标指针, 把它指向下一个坐标点 : 如果当前坐标点已经处于本行最后的位置, 即 DPL = Number_COL-1 时, 下一个坐标点为 (DPH ← DPH+1, DPL ← 1), 否则, 下一个坐标点为 (DPH, DPL ← DPL+1) ; 步骤六、 如果 x, y 坐标指针 DPTR 尚未指向最后一行, 即: DPH < Number_ROW-1, 跳转本 步骤四之 2), 继续跟踪被踩踏区域的轮廓, 否, 则结束跟踪被踩踏区域轮廓的工作 ; 步骤七、 跳转到步骤一, 开始新的一轮扫描检测工作。
7: 根据权利要求 1 所述的防宠物踩踏式报警器及其轮廓法测量面积区分脚型的方法, 其特征在于, 所述轮廓法测量面积以区分脚型程序之步骤四所述跟踪区域轮廓的规则包 括: 1) 被跟踪区域的特征是 : “被跟踪区域内的每一个坐标点都对应着数据 #01H, 需要被 跟踪的区域之外或需要被跟踪的区域之间的坐标点都对应着数据 #00H” ; 2) 启动跟踪轮廓定时器, 如果该定时器的计时时间到了预定的数置, 复位单片机 ; 3) 当前坐标位置对应的数据为 #01H, 查看当前坐标位置的上、 右、 下与左方四个邻点 对应的数据的关系, 决定当前坐标位置的移动方向, 该移动方向经过的路径就形成该区域 的轮廓, 有关移动当前坐标位置的规则如下 : a) 如果其右方邻点对应的数据为 #01H, 其上、 下、 左方邻点对应的数据都为 #00H, 就把 当前坐标位置移向其右方邻点处 ; b) 如果其下方邻点对应的数据为 #01H, 其上、 右、 左方邻点对应的数据都为 #00H, 就把 当前坐标位置移向其下方邻点处 ; c) 如果其左方邻点对应的数据为 #01H, 其上、 右、 下方邻点对应的数据都为 #00H, 就把 当前坐标位置移向其左方邻点处 ; d) 如果其上方邻点对应的数据为 #01H, 其右、 下、 左方邻点对应的数据都为 #00H, 就把 当前坐标位置移向其上方邻点处 ; e) 如果其右、 下方邻点对应的数据都为 #01H, 其左、 上方邻点对应的数据都为 #00H, 就 把当前坐标位置移向其右方邻点处 ; f) 如果其下、 左方邻点对应的数据都为 #01H, 其上、 右方邻点对应的数据都为 #00H, 就 把当前坐标位置移向其下方邻点处 ; g) 如果其左、 上方邻点对应的数据都为 #01H, 其右、 下方邻点对应的数据都为 #00H, 就 把当前坐标位置移向其左方邻点处 ; h) 如果其上、 右方邻点对应的数据都为 #01H, 其下、 左方邻点对应的数据都为 #00H, 就 把当前坐标位置移向其上方邻点处 ; i) 如果其上、 下方邻点对应的数据都为 #01H, 其右、 左方邻点对应的数据都为 #00H, 且 其由其左方邻点移动而来, 就把当前坐标位置移向其上方邻点处 ; j) 如果其上、 下方邻点对应的数据都为 #01H, 其右、 左方邻点对应的数据都为 #00H, 且 其由其右方邻点移动而来, 就把当前坐标位置移向其下方邻点处 ; k) 如果其右、 左方邻点对应的数据都为 #01H, 其上、 下方邻点对应的数据都为 #00H, 且 其由其上方邻点移动而来, 就把当前坐标位置移向其右方邻点处 ; 4 l) 如果其右、 左方邻点对应的数据都为 #01H, 其上、 下方邻点对应的数据都为 #00H, 且 其由其下方邻点移动而来, 就把当前坐标位置移向其左方邻点处 ; m) 如果其上方邻点对应的数据为 #00H, 其余三个邻点对应的数据都为 #01H, 就把当前 坐标位置移向其右方邻点处 ; n) 如果其右方邻点对应的数据为 #00H, 其余三个邻点对应的数据都为 #01H, 就把当前 坐标位置移向其下方邻点处 ; o) 如果其下方邻点对应的数据为 #00H, 其余三个邻点对应的数据都为 #01H, 就把当前 坐标位置移向其左方邻点处 ; p) 如果其左方邻点对应的数据为 #00H, 其余三个邻点对应的数据都为 #01H, 就把当前 坐标位置移向其上方邻点处 ; q) 如果当前坐标位置的上、 右、 下与左方四个邻点对应的四个数据都是 #00H, 四个邻 点中也没有出现本跟踪区域轮廓过程所获得的最前面的 5 个位置坐标之一, 这时, 尝试退 出该 “奇异的隅角” : 把当前坐标位置对应的数据置为 #00H, 从 RAM 内的临时存储区取出最 后存进去的坐标值, 把该坐标值赋予当前坐标位置指针即 (DPH, DPL), 也就是退回到前一个 位置的坐标处, 然后, 按照上述跟踪区域轮廓的规则继续跟踪下一个曲线轮廓点, 如果能够 找到下一个曲线轮廓点, 就继续跟踪区域轮廓的工作, 否则, 所遇到的 “奇异的隅角” 表明不 存在封闭、 连续的轮廓曲线, 即没有形成被踩踏的区域, 这时, 清零 RAM 内的临时存储区, 初 始化 RAM 中临时存储区地址指针寄存器 R1, R2, 设置跟踪区域轮廓工作结束的标志位 : SETB_ F0, 结束本轮跟踪区域轮廓的工作 ; r) 如果当前坐标位置的上、 右、 下与左方四个邻点对应的四个数据都是 #00H, 四个邻 点中出现了本跟踪区域轮廓过程所获得的最前面的 5 个位置坐标之一, 这时, 清零 RAM 内的 临时存储区, 初始化 RAM 中临时存储区地址指针寄存器 R1, R2, 设置跟踪区域轮廓工作结束 的标志位 : SETB_F0, 结束本轮跟踪区域轮廓的工作 ; 4) 每次移动当前坐标位置之前, 根据 RAM 中临时存储区地址指针寄存器 R1, R2 把当前 位置的坐标 (DPH, DPL) 依序存储在 RAM 内的临时存储区, 然后使得 RAM 中临时存储区地址 指针寄存器 R1, R2 指向下一处存储单元 ; 5) 每次移动当前坐标位置之前, 把当前坐标位置对应的数据改写成 #FFH ; 6) 上述诸规则中, 所述数据 #00H 与非 #01H 的其它数据等效。
8: 根据权利要求 1 所述的防宠物踩踏式报警器及其轮廓法测量面积区分脚型的方法, 其特征在于, 所述轮廓法测量面积以区分脚型程序之步骤四关于数格子量面积的方法包括 下述步骤 : 步骤一、 初始化 x, y 坐标指针 DPTR : MOV_DPH, #00H, MOV_DPL, #00H ; 步骤二、 从 RAM 取出并查看当前位置的数据 : MOV_A, @DPTR, (a) 如果该数据不等于 #01H, 跳到本方法之步骤三 ; (b) 如果它等于 #01H, 先查看该坐标位置是否属于轮廓的包围之中 : 否, 则跳到本方法之步骤三 ; 是, 则 查 看 当 前 坐 标 位 置 的 正 下 方 (DPH ← DPH+1, DPL)、 左 下 角 (DPH ← DPH+1, DPL ← DPL-1) 两处的数据是否等于 #01H 或 #FFH, 是, 则格子计数器 R6R5 加 1 ; 还要查看当 前坐标位置的右邻 (DPH, DPL ← DPL+1) 对应的数据是否等于 #01H : 5 是, 跳转本方法之步骤三 ; 否, 进一步查看当前坐标位置的正下方 (DPH ← DPH+1, DPL)、 右下角 (DPH ← DPH+1, DPL ← DPL+1) 两处的数据是否等于 #01H 或 #FFH, 是, 则格子计数器 R6R5 也加 1 ; 若当前坐标位置位于边上的第一行、 第一列、 最后一行或最后一列, 则当前坐标位置的 正下方、 左下角、 右邻与右下角在 RAM 中没有相应的数据, 此时其坐标的特点是 DPH < 0、 DPL < 0、 DPH = Number_ROW 或 DPL = Number_COL, 权当这些坐标点处的数据为 #00H ; 步骤三、 x, y 坐标指针 DPTR 指向当前坐标位置的下一个坐标点 : 如果当前坐标点已经 超出本行倒数第一列, 即: DPL = Number_COL 时, 下一个坐标点为 (DPH ← DPH+1, DPL ← 0), 否则, 下一个坐标点为 (DPH, DPL ← DPL+1) ; 步骤四、 如果 x, y 坐标指针 DPTR 尚未超出倒数第一行, 即: DPH < Number_ROW, 跳转本 方法之步骤二, 继续本次数格子量面积的工作 ; 否, 则计算被踩踏的区域的面积 S(R7) = R6R5×Ssquare, 其中, Ssquare 为一个格子的面积, 由行、 列电极组内导线的间距决定, 清零格子计数器 R6R5, 结束本次数格子量面积的工作。
9: 根据权利要求 1 所述的防宠物踩踏式报警器及其轮廓法测量面积区分脚型的方法, 其特征在于, 所述轮廓法测量面积以区分脚型程序之步骤四关于数格子量面积的方法所述 “查看该坐标位置是否属于轮廓的包围之中” 的实施方法包括下述步骤 : 步骤一、 称当前位置为目标位置, 把其 x, y 坐标指针 DPTR 指向目标位置的左方, 逐个坐 标点地取出它们对应的数据, 即: DEC_DPL, MOVX_A, @DPTR, 并逐个坐标点地查看该数据是否 等于 #FFH : 如果遇到等于 #FFH 的坐标点, 跳到本实施方法之步骤二, 继续查看工作 ; 如果进行到 DPL = 0 还没有遇到等于 #FFH 的坐标点, 表明目标位置没有在轮廓的包围 之中, 建立标志 : F1 = 0, 结束本查看工作 ; 步骤二、 把 x, y 坐标指针 DPTR 指向目标位置的右方, 逐个坐标点地取出它们对应的数 据, 即: INC_DPL, MOVX_A, @DPTR, 并逐个坐标点地查看该数据是否等于 #FFH : 如果遇到等于 #FFH 的坐标点, 跳到本实施方法之步骤三, 继续查看工作 ; 如果进行到 DPL = Number_COL-1 还没有遇到等于 #FFH 的坐标点, 表明目标位置没有 在轮廓的包围之中, 建立标志 : F1 = 0, 结束本查看工作 ; 步骤三、 把 x, y 坐标指针 DPTR 指向目标位置的上方, 逐个坐标点地取出它们对应的数 据, 即: DEC_DPH, MOVX_A, @DPTR, 并逐个坐标点地查看该数据是否等于 #FFH : 如果遇到等于 #FFH 的坐标点, 跳到本实施方法步骤四, 继续查看工作 ; 如果进行到 DPH = 0 还没有遇到等于 #FFH 的坐标点, 表明目标位置没有在轮廓的包围 之中, 建立标志 : F1 = 0, 结束本查看工作 ; 步骤四、 把 x, y 坐标指针 DPTR 指向目标位置的下方, 逐个坐标点地取出它们对应的数 据, 即: INC_DPH, MOVX_A, @DPTR, 并逐个坐标点地查看该数据是否等于 #FFH : 如果遇到等于 #FFH 的坐标点, 说明该目标位置位于 #FFH 所标记的轮廓所包围的区域 内, 建立标志 : F1 = 1, 结束本查看工作 ; 如果进行到 DPH = Number_ROW-1 还没有遇到等于 #FFH 的坐标点, 表明目标位置没有 在轮廓的包围之中, 建立标志 : F1 = 0, 结束本查看工作。

说明书


防宠物踩踏式报警器及其轮廓法测量面积区分脚型的方法

    技术领域 本发明涉及安防电子技术领域, 特别是一种防宠物踩踏式报警装置以及一种测量 随机分布的若干区域的面积的方法。
     背景技术
     2010 年 7 月提交国家知识产权局专利局审查的发明 “防宠物踩踏式报警器及其测 量面积以区分脚型的方法” 借助单片机技术, 以 “数格子量面积的方法” 检测受到踩踏的区 域的面积, 据此区分人与小动物的脚型, 其防宠物踩踏式报警器经济、 实用。但是, 所述 “数 格子量面积的方法” 没有采取措施区分被踩踏的区域, 因而不能够检测、 识别并测量若干块 同时被踩踏的区域, 其结果有可能是某几块被踩踏区域的面积之和。 发明内容本发明的目的是提供一种防宠物踩踏式报警器及其轮廓法测量面积区分脚型的 方法, 所述轮廓法测量面积区分脚型的方法以所述防宠物踩踏式报警器为物理基础, 采用 单片机技术测量被踩踏的区域的面积, 据此区分人与小动物的脚型, 在受到人的踩踏时发 出报警声。
     本发明实现其目的所采用的技术方案是 : 所述防宠物踩踏式报警器由一个长方形 框架、 电池组、 单片机系统、 串入并出电路、 并入串进电路、 音乐电路以及轮廓法测量面积以 区分脚型程序组成 ; 其中, 长方形框架的上部和底部各有一组电极, 分别称之为列电极组和 行电极组, 每一组电极包括 72 根彼此独立、 间距均匀、 裸露的导线, 两组导线排列的方向相 互垂直, 列电极组的导线依序分别连接到并入串进电路的各个并行输入端, 行电极组的导 线依序分别连接到串入并出电路的各个并行输出端, 单片机系统装载有轮廓法测量面积以 区分脚型程序, 其输出口线 P3.7 连接到音乐电路的输入端, 电池组作为本装置的电源。
     所述长方形框架的上部和底部的两组电极由该框架的两侧绝缘隔离并支撑着。
     所述单片机系统包括 : 一块单片机及其晶振电路和上电复位电路、 随机存储器电 路, 其中, 随机存储器电路由一块 74HC373 和 64KB 的 RAM 组成。
     所述串入并出电路由 9 块 74HC164 级联组成 : 第一块 74HC164 的信号串行输入端 A 连接到单片机系统的输出口线 P1.2, 其最高位输出端 QH 连接到第二块的信号串行输入端 A, 第二块的最高位输出端 QH 连接到第三块的信号串行输入端 A, 依次类推, 共产生 8( 位 / 块 )×9 块= 72 位的信号并行输出端 ; 9 块 74HC164 的清零端与信号串行输入端 B 都连接 到电池组的正极, 它们的时钟信号输入端都连接到单片机系统的输出口线 P1.3。
     所述并入串进电路由 9 块 74HC165 级联组成 : 最后一块 74HC165 的并入串出信号 端 QH 连接到前一块的信号串行输入端 DS, 依次类推, 共产生 8( 位 / 块 )×9 块= 72 位的信 号并行输入端, 每一位信号并行输入端还各自连接一个下拉电阻到电池组的负极, 第一块 74HC165 的并入串出信号端 QH 连接到单片机系统的输入口线 P1.5, 这 9 块 74HC165 的并入 数据装载控制端 /PL 都连接到单片机系统的输出口线 P1.6, 它们的时钟信号输入端都连接
     到单片机系统的输出口线 P1.7, 它们的时钟使能输入端 /CE 都连接到电池组的负极。
     本发明所述轮廓法测量面积区分脚型的方法包含在轮廓法测量面积以区分脚型 程序中, 用于区分人与小动物的脚型, 其步骤如下 :
     步骤一、 初始化单片机 :
     MOV_SP, 2FH ’ 堆栈初值,
     CLR_P1.2, P1.3, P1.7, P3.7 ’ 准备输出信号,
     SETB_P1.5, P1.6 ’ 准备输入信号,
     CLR_F0 ’ 初始化跟踪区域轮廓工作结束的标志位,
     步骤二、 初始化程序 :
     CLR_R5, CLR_R6 ’ R5, R6 分别为格子计数器的低字节和高字节,
     MOV_R1, #AL, MOV_R2, #AH ’ RAM 中后部开辟有小块临时存储区, 用于存储被 跟踪区域的轮廓上坐标点的坐标, #AL, #AH 分别为该区域的起始地址之低、 高字节, R 1, R2 分 别为 RAM 中临时存储区地址指针的低字节和高字节寄存器,
     MOV_DPL, #AL, MOV_DPH, #AH
     MOV_R0, #RAM0, MOV_A, #00H ’ #RAM0 为 RAM 中临时存储区的大小, Loop0 : MOVX_@DPTR, A ’ 清零 RAM 中临时存储区中的一个单元,
     INC_DPTR ’ 指向下一单元,
     DJNZ_R0, Loop0 ’ R0 为循环计数器,
     Loop1 : MOV_R0, #Number_COL ’ Number_COL 为列电极组中导线的数目,
     Loop2 : MOV_R3, #Number_ROW ’ Number_ROW 为行电极组中导线的数目,
     SETB_P1.2, NOP, CLR_P1.2 ’ 清零串入并出电路的 9 块 74HC164 的输出端,
     DJNZ_R3, Loop2 ’ R3 为循环计数器,
     DJNZ_R0, Loop1 ’ R0 为循环计数器,
     MOV_DPH, #00H, MOV_DPL, #00H’ 初始化数据指针 DPTR,
     ’ 分开为两个 8 位的 x, y 坐标指针,
     步骤三、 开始扫描检测被踩踏的区域 :
     1) 通过单片机对行电极组中的第一根导线输出一个高电平, 然后, 逐根检测列 电极组中导线的电平, 其低、 高电平分别以 #00H, #01H 表示且存储之 : MOV_@DPTR, #00H 或 MOV_@DPTR, #01H, 其中, 每检测完一根列电极组导线, y 坐标指针就指向下一根列电极组导 线: INC_DPL,
     如果检查完毕列电极组中的全部导线, 即 DPL = Number_COL, 把 x, y 坐标指针指 向下一根行电极组导线 : INC_DPH, MOV_DPL, #00H ;
     2) 通过单片机对行电极组中的下一根导线输出一个高电平, 然后, 逐根检测列电 极组中导线的电平, 其低、 高电平分别以 #00H, #01H 表示且存储之, 其中, 每检测完一根列 电极组导线, y 坐标指针就指向下一根列电极组导线,
     如果检查完毕列电极组中的全部导线, 即 DPL = Number_COL, 把 x, y 坐标指针指 向下一根行电极组导线 ;
     3) 判断行电极组中当前处于高电平的导线是否超出其最后一根 :
     (a)DPH < Number_ROW, 不是最后一根, 跳转到本步骤三之 2) 继续进行扫描检测 ;
     (b)DPH = Number_ROW, 已超出最后一根, 执行下一步骤 ;
     步骤四、 跟踪被踩踏区域的轮廓 :
     1) 初始化 x, y 坐标指针 DPTR : MOV_DPH, #01H, MOV_DPL, #01H ;
     2) 暂存当前 x, y 坐标指针 DPTR, 称之为当前跟踪坐标指针, 从 RAM 取出并查看当 前位置的数据 : MOV_A, @DPTR :
     (a) 如果该数据为 #00H, 执行步骤五 ;
     (b) 如 果 该 数 据 为 #01H, 查 看 位 于 当 前 坐 标 位 置 的 上、 右、 下与左方的四邻 {(DPH ← DPH-1, DPL)、 (DPH, DPL ← DPL+1)、 (DPH ← DPH+1, DPL) 与 (DPH, DPL ← DPL-1)} 处的四个数据, 即按照跟踪区域轮廓的规则获取与行、 列电极组导线被踩踏所致接触的区 域对应的轮廓 ;
     然后, 运用 “数格子量面积的方法” , 获得被踩踏区域的面积 : S(R7) ;
     如果被踩踏区域的面积 S(R7) ≥ Area, (Area 为某个预定值 ), 就判断为受到人的 脚的踩踏, 并发出警报信号 : SETB_P3.7, 延时约十秒, 再撤除该报警信号 : CLR_P3.7 ; 执行 步骤五 ;
     步骤五、 恢复当前 x, y 坐标指针 DPTR 为当前跟踪坐标指针, 把它指向下一个坐标 点: 如果当前坐标点已经处于本行最后的位置, 即 DPL = Number_COL-1 时, 下一个坐标点为 (DPH ← DPH+1, DPL ← 1), 否则, 下一个坐标点为 (DPH, DPL ← DPL+1) ;
     步骤六、 如果 x, y 坐标指针 DPTR 尚未指向最后一行, 即: DPH < Number_ROW-1, 跳 转本步骤四之 2), 继续跟踪被踩踏区域的轮廓, 否, 则结束跟踪被踩踏区域轮廓的工作 ;
     步骤七、 跳转到步骤一, 开始新的一轮扫描检测工作。
     上述步骤四中所述跟踪区域轮廓的规则包括 :
     1) 被跟踪区域的特征是 : “被跟踪区域内的每一个坐标点都对应着数据 #01H, 需 要被跟踪的区域之外或需要被跟踪的区域之间的坐标点都对应着数据 #00H” ;
     2) 启动跟踪轮廓定时器, 如果该定时器的计时时间到了预定的数置, 复位单片 机;
     3) 当前坐标位置对应的数据为 #01H, 查看当前坐标位置的上、 右、 下与左方四个 邻点对应的数据的关系, 决定当前坐标位置的移动方向, 该移动方向经过的路径就形成该 区域的轮廓, 有关移动当前坐标位置的规则如下 :
     a) 如果其右方邻点对应的数据为 #01H, 其上、 下、 左方邻点对应的数据都为 #00H, 就把当前坐标位置移向其右方邻点处 ;
     b) 如果其下方邻点对应的数据为 #01H, 其上、 右、 左方邻点对应的数据都为 #00H, 就把当前坐标位置移向其下方邻点处 ;
     c) 如果其左方邻点对应的数据为 #01H, 其上、 右、 下方邻点对应的数据都为 #00H, 就把当前坐标位置移向其左方邻点处 ;
     d) 如果其上方邻点对应的数据为 #01H, 其右、 下、 左方邻点对应的数据都为 #00H, 就把当前坐标位置移向其上方邻点处 ;
     e) 如果其右、 下方邻点对应的数据都为 #01H, 其左、 上方邻点对应的数据都为 #00H, 就把当前坐标位置移向其右方邻点处 ;
     f) 如果其下、 左方邻点对应的数据都为 #01H, 其上、 右方邻点对应的数据都为#00H, 就把当前坐标位置移向其下方邻点处 ;
     g) 如果其左、 上方邻点对应的数据都为 #01H, 其右、 下方邻点对应的数据都为 #00H, 就把当前坐标位置移向其左方邻点处 ;
     h) 如果其上、 右方邻点对应的数据都为 #01H, 其下、 左方邻点对应的数据都为 #00H, 就把当前坐标位置移向其上方邻点处 ;
     i) 如果其上、 下方邻点对应的数据都为 #01H, 其右、 左方邻点对应的数据都为 #00H, 且其由其左方邻点移动而来, 就把当前坐标位置移向其上方邻点处 ;
     j) 如果其上、 下方邻点对应的数据都为 #01H, 其右、 左方邻点对应的数据都为 #00H, 且其由其右方邻点移动而来, 就把当前坐标位置移向其下方邻点处 ;
     k) 如果其右、 左方邻点对应的数据都为 #01H, 其上、 下方邻点对应的数据都为 #00H, 且其由其上方邻点移动而来, 就把当前坐标位置移向其右方邻点处 ;
     l) 如果其右、 左方邻点对应的数据都为 #01H, 其上、 下方邻点对应的数据都为 #00H, 且其由其下方邻点移动而来, 就把当前坐标位置移向其左方邻点处 ;
     m) 如果其上方邻点对应的数据为 #00H, 其余三个邻点对应的数据都为 #01H, 就把 当前坐标位置移向其右方邻点处 ; n) 如果其右方邻点对应的数据为 #00H, 其余三个邻点对应的数据都为 #01H, 就把 当前坐标位置移向其下方邻点处 ;
     o) 如果其下方邻点对应的数据为 #00H, 其余三个邻点对应的数据都为 #01H, 就把 当前坐标位置移向其左方邻点处 ;
     p) 如果其左方邻点对应的数据为 #00H, 其余三个邻点对应的数据都为 #01H, 就把 当前坐标位置移向其上方邻点处 ;
     q) 如果当前坐标位置的上、 右、 下与左方四个邻点对应的四个数据都是 #00H, 四 个邻点中也没有出现本跟踪区域轮廓过程所获得的最前面的 5 个位置坐标之一, 这时, 尝 试退出该 “奇异的隅角” : 把当前坐标位置对应的数据置为 #00H, 从 RAM 内的临时存储区取 出最后存进去的坐标值, 把该坐标值赋予当前坐标位置指针即 (DPH, DPL), 也就是退回到前 一个位置的坐标处, 然后, 按照上述跟踪区域轮廓的规则继续跟踪下一个曲线轮廓点, 如果 能够找到下一个曲线轮廓点, 就继续跟踪区域轮廓的工作, 否则, 所遇到的 “奇异的隅角” 表 明不存在封闭、 连续的轮廓曲线, 即没有形成被踩踏的区域, 这时, 清零 RAM 内的临时存储 区, 初始化 RAM 中临时存储区地址指针寄存器 R1, R2, 设置跟踪区域轮廓工作结束的标志位 : SETB_F0, 结束本轮跟踪区域轮廓的工作 ;
     r) 如果当前坐标位置的上、 右、 下与左方四个邻点对应的四个数据都是 #00H, 四 个邻点中出现了本跟踪区域轮廓过程所获得的最前面的 5 个位置坐标之一, 这时, 清零 RAM 内的临时存储区, 初始化 RAM 中临时存储区地址指针寄存器 R1, R2, 设置跟踪区域轮廓工作 结束的标志位 : SETB_F0, 结束本轮跟踪区域轮廓的工作 ;
     4) 每次移动当前坐标位置之前, 根据 RAM 中临时存储区地址指针寄存器 R1, R2 把 当前位置的坐标 (DPH, DPL) 依序存储在 RAM 内的临时存储区, 然后使得 RAM 中临时存储区 地址指针寄存器 R1, R2 指向下一处存储单元 ;
     5) 每次移动当前坐标位置之前, 把当前坐标位置对应的数据改写成 #FFH ;
     6) 上述诸规则中, 所述数据 #00H 与非 #01H 的其它数据等效。
     上述步骤四所述数格子量面积的方法包括下述步骤 :
     步骤一、 初始化 x, y 坐标指针 DPTR : MOV_DPH, #00H, MOV_DPL, #00H ;
     步骤二、 从 RAM 取出并查看当前位置的数据 : MOV_A, @DPTR,
     (a) 如果该数据不等于 #01H, 跳到本方法之步骤三 ;
     (b) 如果它等于 #01H, 先查看该坐标位置是否属于轮廓的包围之中 :
     否, 则跳到本方法之步骤三 ;
     是, 则查看当前坐标位置的正下方 (DPH ← DPH+1, DPL)、 左下角 (DPH ← DPH+1, DPL ← DPL-1) 两处的数据是否等于 #01H 或 #FFH, 是, 则格子计数器 R6R5 加 1 ; 还要查看当 前坐标位置的右邻 (DPH, DPL ← DPL+1) 对应的数据是否等于 #01H :
     是, 跳转本方法之步骤三,
     否, 进一步查看当前坐标位置的正下方 (DPH ← DPH+1, DPL)、 右下角 (DPH ← DPH+1, DPL ← DPL+1) 两处的数据是否等于 #01H 或 #FFH, 是, 则格子计数器 R6R5 也加 1 ;
     若当前坐标位置位于边上的第一行、 第一列、 最后一行或最后一列, 则当前坐标 位置的正下方、 左下角、 右邻与右下角在 RAM 中没有相应的数据, 此时其坐标的特点是 DPH < 0、 DPL < 0、 DPH = Number_ROW 或 DPL = Number_COL, 权当这些坐标点处的数据为 #00H ; 步骤三、 x, y 坐标指针 DPTR 指向当前坐标位置的下一个坐标点 : 如果当前坐标 点已经超出本行倒数第一列, 即: DPL = Number_COL 时, 下一个坐标点为 (DPH ← DPH+1, DPL ← 0), 否则, 下一个坐标点为 (DPH, DPL ← DPL+1) ;
     步骤四、 如果 x, y 坐标指针 DPTR 尚未超出倒数第一行, 即: DPH < Number_ROW, 跳 转本方法之步骤二, 继续本次数格子量面积的工作 ;
     否, 则计算被踩踏的区域的面积 S(R7) = R6R5×Ssquare, 其中, Ssquare 为一个格子的 面积, 由行、 列电极组内导线的间距决定, 清零格子计数器 R6R5, 结束本次数格子量面积的工 作。
     上述步骤四所述数格子量面积的方法之步骤二所述 “查看该坐标位置是否属于轮 廓的包围之中” 的本实施方法包括下述步骤 :
     步骤一、 称当前位置为目标位置, 把其 x, y 坐标指针 DPTR 指向目标位置的左方, 逐 个坐标点地取出它们对应的数据, 即: DEC_DPL, MOVX_A, @DPTR, 并逐个坐标点地查看该数据 是否等于 #FFH :
     如果遇到等于 #FFH 的坐标点, 跳到本实施方法之步骤二, 继续查看工作 ;
     如果进行到 DPL = 0 还没有遇到等于 #FFH 的坐标点, 表明目标位置没有在轮廓的 包围之中, 建立标志 : F1 = 0, 结束本查看工作 ;
     步骤二、 把 x, y 坐标指针 DPTR 指向目标位置的右方, 逐个坐标点地取出它们对应 的数据, 即: INC_DPL, MOVX_A, @DPTR, 并逐个坐标点地查看该数据是否等于 #FFH :
     如果遇到等于 #FFH 的坐标点, 跳到本实施方法之步骤三, 继续查看工作 ;
     如果进行到 DPL = Number_COL-1 还没有遇到等于 #FFH 的坐标点, 表明目标位置 没有在轮廓的包围之中, 建立标志 : F1 = 0, 结束本查看工作 ;
     步骤三、 把 x, y 坐标指针 DPTR 指向目标位置的上方, 逐个坐标点地取出它们对应 的数据, 即: DEC_DPH, MOVX_A, @DPTR, 并逐个坐标点地查看该数据是否等于 #FFH :
     如果遇到等于 #FFH 的坐标点, 跳到本实施方法步骤四, 继续查看工作 ;
     如果进行到 DPH = 0 还没有遇到等于 #FFH 的坐标点, 表明目标位置没有在轮廓的 包围之中, 建立标志 : F1 = 0, 结束本查看工作 ;
     步骤四、 把 x, y 坐标指针 DPTR 指向目标位置的下方, 逐个坐标点地取出它们对应 的数据, 即: INC_DPH, MOVX_A, @DPTR, 并逐个坐标点地查看该数据是否等于 #FFH :
     如果遇到等于 #FFH 的坐标点, 说明该目标位置位于 #FFH 所标记的轮廓所包围的 区域内, 建立标志 : F1 = 1, 结束本查看工作 ;
     如果进行到 DPH = Number_ROW-1 还没有遇到等于 #FFH 的坐标点, 表明目标位置 没有在轮廓的包围之中, 建立标志 : F1 = 0, 结束本查看工作。
     本发明的优点是, 按照行、 列两电极组导线的排列建立二维坐标系, 借助单片机就 可以扫描检测被踩踏的区域、 逐块跟踪它们的轮廓、 对轮廓内区域数格子算面积、 判断脚型 并决定是否发出报警声 ; 所述测量面积的方法针对一块一块被踩踏的区域, 适用于防盗报 警工作。 附图说明
     下面对照附图进一步具体说明本发明。图 1 是本发明的结构示意图。
     图 2 是单片机系统的原理图。
     图 3 是串入并出电路的原理图。
     图 4 是跟踪区域轮廓的规则的示意图, 包括情形 (a)-(r) ; 其中, 每一种情形的中 心为当前坐标位置, 虚线箭头表示当前位置的来源方向, 实线箭头表示当前位置的移动方 向, 数据 0 与其它非 1 的数据等效, 情形 (q) 表示跟踪轮廓过程中可能遇到的 “奇异的隅 角” , 情形 (r) 表示跟踪轮廓过程的结束条件, 其中的 R7 表示本跟踪区域轮廓过程所获得的 最前面的 5 个位置坐标之一。
     图 5 是并入串进电路的原理图。
     图 6 是应用跟踪区域轮廓的规则的例子, 其中, a 是跟踪区域轮廓的起始点, b是 “奇异的隅角” , d 是跟踪区域轮廓的终止点。
     图中, 1. 长方形框架, 11. 长方形框架 1 的侧面 ( 宽 ), 12. 长方形框架 1 的侧面 ( 长 ), 13. 长方形框架 1 底板上的 ( 行 ) 电极组, 14. 位于长方形框架的上部的 ( 列 ) 电极 组, 141. 目标区域 I, 142. 跟踪第一个目标区域的轮廓的起始点, 143. 跟踪目标区域轮廓的 行扫描检测方向, 144. 跟踪目标区域 I 获得的轮廓, 21.-29.74HC164, 31.-39.74HC165。 具体实施方式
     本发明包括 : 一个长方形框架 (1)、 电池组、 单片机系统、 串入并出电路、 并入串进 电路、 音乐电路以及轮廓法测量面积以区分脚型程序。
     长方形框架 (1) 如图 1 所示, 其上部和底部各有一组电极 (14) 和 (13), 分别称之 为列电极组和行电极组, 每一组电极由 72 根裸露的金属导线组成, 这些导线彼此独立, 间 距均匀, 两组电极 (14) 和 (13) 的导线排列的方向相互垂直 ( 不作严格要求 ), 由框架 (1) 的两侧 (11) 或 (12) 绝缘隔离并支撑着, 整个长方形框架的外部包裹着绝缘材料, 外形似踏 脚垫。单片机系统如图 2 所示, 图中没有画出单片机的上电复位电路和时钟电路。假设 行、 列电极组各有 256 根导线, 会产生 256×256 = 65536 个交叉点, 每个交叉点有两种状 10 态: 分离或接触, 而 64KB = 64×1024 = 64×2 = 65536, 因此, 需要扩展 64KB 片外 RAM, 其中还要包括至少 256B×2×4 = 2KB RAM 内的临时存储区, 以存储各轮廓点坐标的高、 低 字节。单片机需要选用 8051 系列中具有 40 个脚的, 最好它自带片内 Flash 程序存储器, 这 时, 其单片机的引脚 /EA 接到电源正极。
     所 述 串 入 并 出 电 路 如 图 3 所 示,由 九 块 8 位 串 入 并 出 移 位 寄 存 器 74HC164(21)-(29) 级联组成, 其 72 个输出端 QA, QB, QC, QD, QE, ...... 分别依次连接到长 方形框架 (1) 的底部的行电极组 (13) 中的每根金属导线。
     所 述 并 入 串 进 电 路 如 图 5 所 示,由 九 块 8 位 并 入 串 出 移 位 寄 存 器 74HC165(31)-(39) 级联组成, 其 72 个输出端 A, B, C, D, E, ...... 分别依次连接到长方形框 架 (1) 的上部的列电极组 (14) 中的每根金属导线。这 72 个输出端 A, R, C, D, E, ...... 的 每一个还各自连接一个~ 30KΩ 的下拉电阻到电源的负端, 因为简洁缘故, 图 5 中并没有全 部画出这些下拉电阻。
     音乐电路采用音乐集成电路配合扬声器, 或者只使用一只蜂鸣器, 用于发出报警 声。
     平时, 行、 列电极组中导线在空间上相互交叉但没有接触, 列电极组中的导线的电 势被下拉到电源地, 单片机通过串入并出电路逐根扫描式输出高电平到行电极组的导线。 受到踩踏时, 被踩踏的区域内行、 列电极组中的导线发生接触, 依序使得位于这些接触点的 列电极组中的导线也处于高电平。 可以选取位于左上角的第一个交叉点所在处作坐标系的 原点, 按照行、 列电极组中导线的排列方向建立坐标系, 单片机通过扫描检测获得空间上相 互交叉的点的高、 低电平, 被存储在 64KB 片外 RAM 中。这样, 用 #00H, #01H 两个数码就表示 了整个防宠物踩踏式报警器所警戒的区域的状况。
     需要区分被踩踏的区域, 从而能够分别对各个被踩踏区域 “数格子量面积” , 其工 作即 “跟踪被踩踏区域的轮廓” 。
     轮廓法测量面积以区分脚型程序之步骤四叙述了 “跟踪被踩踏区域的轮廓” 的 方法, 它按照从左向右、 从上向下的行、 列检测顺序, 寻找代表被踩踏的电极接触点的数据 #01H, 直到最后一行的最后一个坐标点被搜索完毕为止。每一次找到数据 #01H 时, 先暂存 当前 x, y 坐标指针 DPTR, 称之为当前跟踪坐标指针, 然后, 遵循 “跟踪区域轮廓的规则” (如 图 4 所描述 ), 开始跟踪从此坐标点起始的被踩踏区域 ( 用数据 #01H 表示 ) 的轮廓。跟踪 过程中, x, y 坐标位置指针逐个坐标点地移动, 每一次移动前, 当前坐标点的数据被改写成 #FFH, 其坐标 (DPH, DPL) 被保存在 RAM 内的临时存储区, 它们构成了被跟踪区域的轮廓。
     图 6 描述了一个应用 “跟踪区域轮廓的规则” 的例子。
     紧接着, 开始轮廓法测量面积以区分脚型程序之步骤四所述 “数格子量面积” : 按 照从左向右、 从上向下的行、 列检测顺序, 逐个坐标点地在整个防宠物踩踏式报警器所警戒 的区域内搜索数据 #01H, 如果找到了 #01H 的坐标点, 就分析它是否处于 #FFH 所表示的轮廓 之包围中, 如果它属于该轮廓包围圈内, 再分析其四邻是否是被踩踏点, 需不需要计数该格 子。
     “数格子量面积的方法” 如轮廓法测量面积以区分脚型程序之步骤四所述。参见图 6, 数格子规则之要点是 : 1) 从左向右、 从上向下逐个坐标点地查看并统计格子, 2) 遇到 #01H 的时候, 先按照 “正下方 - 左下方” 路线进行查看, 如果该路线上相关的三个交叉点的 数据都为 #01H 或 #FFH, 则表示该踩踏区域内包围了一个格子 ; 然后, 查看其右边的点的数 据是否为 #01H : 是 #01H, 则按下一个坐标点来统计格子, 否, 则按照 “正下方 - 右下方” 路线 查看, 如果该路线上相关的三个交叉点的数据都为 #01H 或 #FFH, 则表示该踩踏区域内还得 计数一个格子 ; 3) 数到最后一行的最后一个坐标点结束本次数格子工作。
     踩踏区域的面积等于统计出的被踩踏区域内格子的数量乘上一个格子的面积。 根 据被踩踏区域面积的大小, 可以分析受到的踩踏的性质, 判断是否属于人的踩踏还是小动 物的踩踏。
     本发明所述单片机系统的输出或输入端口线可以根据实际情形加以变换, 所述列 或行电极组所包含的导线的数目及其间距、 相应的串入并出、 并入串出移位寄存器的数目 以及随机存储器的容量可以根据本发明所述扫描检测原理增加或减少。

防宠物踩踏式报警器及其轮廓法测量面积区分脚型的方法.pdf_第1页
第1页 / 共17页
防宠物踩踏式报警器及其轮廓法测量面积区分脚型的方法.pdf_第2页
第2页 / 共17页
防宠物踩踏式报警器及其轮廓法测量面积区分脚型的方法.pdf_第3页
第3页 / 共17页
点击查看更多>>
资源描述

《防宠物踩踏式报警器及其轮廓法测量面积区分脚型的方法.pdf》由会员分享,可在线阅读,更多相关《防宠物踩踏式报警器及其轮廓法测量面积区分脚型的方法.pdf(17页珍藏版)》请在专利查询网上搜索。

1、10申请公布号CN102339513A43申请公布日20120201CN102339513ACN102339513A21申请号201010228515922申请日20100716G08B13/10200601G01B7/2820060171申请人重庆工商大学地址400067重庆市南岸区学府大道19号重庆工商大学科研处72发明人曾艺张文娟张海明54发明名称防宠物踩踏式报警器及其轮廓法测量面积区分脚型的方法57摘要防宠物踩踏式报警器及其轮廓法测量面积区分脚型的方法包括防宠物踩踏式报警器与轮廓法测量面积区分脚型的方法两部分;后者体现于轮廓法测量面积以区分脚型程序,前者由一个长方形框架、电池组、单片机。

2、系统、串入并出电路、并入串进电路与音乐电路组成,其中,长方形框架的上部和底部分别设置有列、行电极组,其导线依序分别连接到并入串进电路的各个并行输入端与串入并出电路的各个并行输出端。按照行、列两电极组导线的排列建立二维坐标系,借助单片机扫描检测被踩踏的区域、逐块跟踪它们的轮廓、对轮廓内区域数格子算面积、判断脚型并决定是否发出报警声。所述测量面积的方法针对一块一块被踩踏的区域,适用于防盗报警工作。51INTCL19中华人民共和国国家知识产权局12发明专利申请权利要求书5页说明书8页附图3页CN102339526A1/5页21防宠物踩踏式报警器及其轮廓法测量面积区分脚型的方法,其特征是所述防宠物踩踏。

3、式报警器由一个长方形框架、电池组、单片机系统、串入并出电路、并入串进电路、音乐电路以及轮廓法测量面积以区分脚型程序组成;其中,长方形框架的上部和底部各有一组电极,分别称之为列电极组和行电极组,每一组电极包括72根彼此独立、间距均匀、裸露的金属导线,两组电极的导线排列的方向相互垂直,列电极组的导线依序分别连接到并入串进电路的各个并行输入端,行电极组的导线依序分别连接到串入并出电路的各个并行输出端,单片机系统装载有轮廓法测量面积以区分脚型程序,其输出口线P37连接到音乐电路的输入端,电池组作为本装置的电源。2根据权利要求1所述的防宠物踩踏式报警器及其轮廓法测量面积区分脚型的方法,其特征是所述长方形。

4、框架的上部和底部的两组电极由该框架的两侧绝缘隔离并支撑着。3根据权利要求1所述的防宠物踩踏式报警器及其轮廓法测量面积区分脚型的方法,其特征是所述单片机系统包括一块单片机及其晶振电路和上电复位电路、随机存储器电路,其中,随机存储器电路由一块74HC373和64KB的RAM组成。4根据权利要求1所述的防宠物踩踏式报警器及其轮廓法测量面积区分脚型的方法,其特征是所述串入并出电路由9块74HC164级联组成第一块74HC164的信号串行输入端A连接到单片机系统的输出口线P12,其最高位输出端QH连接到第二块的信号串行输入端A,第二块的最高位输出端QH连接到第三块的信号串行输入端A,依次类推,共产生8位。

5、/块9块72位的信号并行输出端;9块74HC164的清零端与信号串行输入端B都连接到电池组的正极,它们的时钟信号输入端都连接到单片机系统的输出口线P13。5根据权利要求1所述的防宠物踩踏式报警器及其轮廓法测量面积区分脚型的方法,其特征是所述并入串进电路由9块74HC165级联组成最后一块74HC165的并入串出信号端QH连接到前一块的信号串行输入端DS,依次类推,共产生8位/块9块72位的信号并行输入端,每一位信号并行输入端还各自连接一个下拉电阻到电池组的负极,第一块74HC165的并入串出信号端QH连接到单片机系统的输入口线P15,这9块74HC165的并入数据装载控制端/PL都连接到单片机。

6、系统的输出口线P16,它们的时钟信号输入端都连接到单片机系统的输出口线P17,它们的时钟使能输入端/CE都连接到电池组的负极。6根据权利要求1所述的防宠物踩踏式报警器及其轮廓法测量面积区分脚型的方法,其特征在于,所述轮廓法测量面积区分脚型的方法包含在所述轮廓法测量面积以区分脚型程序中,用于区分人与小动物的脚型,其步骤如下步骤一、初始化单片机MOV_SP,2FH堆栈初值,CLR_P12,P13,P17,P37准备输出信号,SETB_P15,P16准备输入信号,CLR_F0初始化跟踪区域轮廓工作结束的标志位,步骤二、初始化程序CLR_R5,CLR_R6R5,R6分别为格子计数器的低字节和高字节,M。

7、OV_R1,AL,MOV_R2,AHRAM中后部开辟有小块临时存储区,用于存储被跟踪区域的轮廓上坐标点的坐标,AL,AH分别为该区域的起始地址之低、高字节,R1,R2权利要求书CN102339513ACN102339526A2/5页3分别为RAM中临时存储区地址指针的低字节和高字节寄存器,MOV_DPL,AL,MOV_DPH,AHMOV_R0,RAM0,MOV_A,00HRAM0为RAM中临时存储区的大小,LOOP0MOVX_DPTR,A清零RAM中临时存储区中的一个单元,INC_DPTR指向下一单元,DJNZ_R0,LOOP0R0为循环计数器,LOOP1MOV_R0,NUMBER_COLNU。

8、MBER_COL为列电极组中导线的数目,LOOP2MOV_R3,NUMBER_ROWNUMBER_ROW为行电极组中导线的数目,SETB_P12,NOP,CLR_P12清零串入并出电路的9块74HC164的输出端,DJNZ_R3,LOOP2R3为循环计数器,DJNZ_R0,LOOP1R0为循环计数器,MOV_DPH,00H,MOV_DPL,00H初始化数据指针DPTR,分开为两个8位的X,Y坐标指针,步骤三、开始扫描检测被踩踏的区域1通过单片机对行电极组中的第一根导线输出一个高电平,然后,逐根检测列电极组中导线的电平,其低、高电平分别以00H,01H表示且存储之MOV_DPTR,00H或MOV。

9、_DPTR,01H,其中,每检测完一根列电极组导线,Y坐标指针就指向下一根列电极组导线INC_DPL,如果检查完毕列电极组中的全部导线,即DPLNUMBER_COL,把X,Y坐标指针指向下一根行电极组导线INC_DPH,MOV_DPL,00H;2通过单片机对行电极组中的下一根导线输出一个高电平,然后,逐根检测列电极组中导线的电平,其低、高电平分别以00H,01H表示且存储之,其中,每检测完一根列电极组导线,Y坐标指针就指向下一根列电极组导线,如果检查完毕列电极组中的全部导线,即DPLNUMBER_COL,把X,Y坐标指针指向下一根行电极组导线;3判断行电极组中当前处于高电平的导线是否超出其最后。

10、一根ADPHNUMBER_ROW,不是最后一根,跳转到本步骤之2继续进行扫描检测;BDPHNUMBER_ROW,已超出最后一根,执行下一步骤;步骤四、跟踪被踩踏区域的轮廓1初始化X,Y坐标指针DPTRMOV_DPH,01H,MOV_DPL,01H;2暂存当前X,Y坐标指针DPTR,称之为当前跟踪坐标指针,从RAM取出并查看当前位置的数据MOV_A,DPTRA如果该数据为00H,执行本步骤四之3;B如果该数据为01H,查看位于当前坐标位置的上、右、下与左方的四邻DPHDPH1,DPL、DPH,DPLDPL1、DPHDPH1,DPL与DPH,DPLDPL1处的四个数据,即按照跟踪区域轮廓的规则获取。

11、与行、列电极组导线被踩踏所致接触的区域对应的轮廓;然后,运用“数格子量面积的方法”,获得被踩踏区域的面积SR7;如果被踩踏区域的面积SR7AREA,AREA为某个预定值,就判断为受到人的脚的权利要求书CN102339513ACN102339526A3/5页4踩踏,并发出警报信号SETB_P37,延时约十秒,再撤除该报警信号CLR_P37;执行步骤五;步骤五、恢复当前X,Y坐标指针DPTR为当前跟踪坐标指针,把它指向下一个坐标点如果当前坐标点已经处于本行最后的位置,即DPLNUMBER_COL1时,下一个坐标点为DPHDPH1,DPL1,否则,下一个坐标点为DPH,DPLDPL1;步骤六、如果X。

12、,Y坐标指针DPTR尚未指向最后一行,即DPHNUMBER_ROW1,跳转本步骤四之2,继续跟踪被踩踏区域的轮廓,否,则结束跟踪被踩踏区域轮廓的工作;步骤七、跳转到步骤一,开始新的一轮扫描检测工作。7根据权利要求1所述的防宠物踩踏式报警器及其轮廓法测量面积区分脚型的方法,其特征在于,所述轮廓法测量面积以区分脚型程序之步骤四所述跟踪区域轮廓的规则包括1被跟踪区域的特征是“被跟踪区域内的每一个坐标点都对应着数据01H,需要被跟踪的区域之外或需要被跟踪的区域之间的坐标点都对应着数据00H”;2启动跟踪轮廓定时器,如果该定时器的计时时间到了预定的数置,复位单片机;3当前坐标位置对应的数据为01H,查看。

13、当前坐标位置的上、右、下与左方四个邻点对应的数据的关系,决定当前坐标位置的移动方向,该移动方向经过的路径就形成该区域的轮廓,有关移动当前坐标位置的规则如下A如果其右方邻点对应的数据为01H,其上、下、左方邻点对应的数据都为00H,就把当前坐标位置移向其右方邻点处;B如果其下方邻点对应的数据为01H,其上、右、左方邻点对应的数据都为00H,就把当前坐标位置移向其下方邻点处;C如果其左方邻点对应的数据为01H,其上、右、下方邻点对应的数据都为00H,就把当前坐标位置移向其左方邻点处;D如果其上方邻点对应的数据为01H,其右、下、左方邻点对应的数据都为00H,就把当前坐标位置移向其上方邻点处;E如果。

14、其右、下方邻点对应的数据都为01H,其左、上方邻点对应的数据都为00H,就把当前坐标位置移向其右方邻点处;F如果其下、左方邻点对应的数据都为01H,其上、右方邻点对应的数据都为00H,就把当前坐标位置移向其下方邻点处;G如果其左、上方邻点对应的数据都为01H,其右、下方邻点对应的数据都为00H,就把当前坐标位置移向其左方邻点处;H如果其上、右方邻点对应的数据都为01H,其下、左方邻点对应的数据都为00H,就把当前坐标位置移向其上方邻点处;I如果其上、下方邻点对应的数据都为01H,其右、左方邻点对应的数据都为00H,且其由其左方邻点移动而来,就把当前坐标位置移向其上方邻点处;J如果其上、下方邻点。

15、对应的数据都为01H,其右、左方邻点对应的数据都为00H,且其由其右方邻点移动而来,就把当前坐标位置移向其下方邻点处;K如果其右、左方邻点对应的数据都为01H,其上、下方邻点对应的数据都为00H,且其由其上方邻点移动而来,就把当前坐标位置移向其右方邻点处;权利要求书CN102339513ACN102339526A4/5页5L如果其右、左方邻点对应的数据都为01H,其上、下方邻点对应的数据都为00H,且其由其下方邻点移动而来,就把当前坐标位置移向其左方邻点处;M如果其上方邻点对应的数据为00H,其余三个邻点对应的数据都为01H,就把当前坐标位置移向其右方邻点处;N如果其右方邻点对应的数据为00H。

16、,其余三个邻点对应的数据都为01H,就把当前坐标位置移向其下方邻点处;O如果其下方邻点对应的数据为00H,其余三个邻点对应的数据都为01H,就把当前坐标位置移向其左方邻点处;P如果其左方邻点对应的数据为00H,其余三个邻点对应的数据都为01H,就把当前坐标位置移向其上方邻点处;Q如果当前坐标位置的上、右、下与左方四个邻点对应的四个数据都是00H,四个邻点中也没有出现本跟踪区域轮廓过程所获得的最前面的5个位置坐标之一,这时,尝试退出该“奇异的隅角”把当前坐标位置对应的数据置为00H,从RAM内的临时存储区取出最后存进去的坐标值,把该坐标值赋予当前坐标位置指针即DPH,DPL,也就是退回到前一个位。

17、置的坐标处,然后,按照上述跟踪区域轮廓的规则继续跟踪下一个曲线轮廓点,如果能够找到下一个曲线轮廓点,就继续跟踪区域轮廓的工作,否则,所遇到的“奇异的隅角”表明不存在封闭、连续的轮廓曲线,即没有形成被踩踏的区域,这时,清零RAM内的临时存储区,初始化RAM中临时存储区地址指针寄存器R1,R2,设置跟踪区域轮廓工作结束的标志位SETB_F0,结束本轮跟踪区域轮廓的工作;R如果当前坐标位置的上、右、下与左方四个邻点对应的四个数据都是00H,四个邻点中出现了本跟踪区域轮廓过程所获得的最前面的5个位置坐标之一,这时,清零RAM内的临时存储区,初始化RAM中临时存储区地址指针寄存器R1,R2,设置跟踪区域。

18、轮廓工作结束的标志位SETB_F0,结束本轮跟踪区域轮廓的工作;4每次移动当前坐标位置之前,根据RAM中临时存储区地址指针寄存器R1,R2把当前位置的坐标DPH,DPL依序存储在RAM内的临时存储区,然后使得RAM中临时存储区地址指针寄存器R1,R2指向下一处存储单元;5每次移动当前坐标位置之前,把当前坐标位置对应的数据改写成FFH;6上述诸规则中,所述数据00H与非01H的其它数据等效。8根据权利要求1所述的防宠物踩踏式报警器及其轮廓法测量面积区分脚型的方法,其特征在于,所述轮廓法测量面积以区分脚型程序之步骤四关于数格子量面积的方法包括下述步骤步骤一、初始化X,Y坐标指针DPTRMOV_DP。

19、H,00H,MOV_DPL,00H;步骤二、从RAM取出并查看当前位置的数据MOV_A,DPTR,A如果该数据不等于01H,跳到本方法之步骤三;B如果它等于01H,先查看该坐标位置是否属于轮廓的包围之中否,则跳到本方法之步骤三;是,则查看当前坐标位置的正下方DPHDPH1,DPL、左下角DPHDPH1,DPLDPL1两处的数据是否等于01H或FFH,是,则格子计数器R6R5加1;还要查看当前坐标位置的右邻DPH,DPLDPL1对应的数据是否等于01H权利要求书CN102339513ACN102339526A5/5页6是,跳转本方法之步骤三;否,进一步查看当前坐标位置的正下方DPHDPH1,DP。

20、L、右下角DPHDPH1,DPLDPL1两处的数据是否等于01H或FFH,是,则格子计数器R6R5也加1;若当前坐标位置位于边上的第一行、第一列、最后一行或最后一列,则当前坐标位置的正下方、左下角、右邻与右下角在RAM中没有相应的数据,此时其坐标的特点是DPH0、DPL0、DPHNUMBER_ROW或DPLNUMBER_COL,权当这些坐标点处的数据为00H;步骤三、X,Y坐标指针DPTR指向当前坐标位置的下一个坐标点如果当前坐标点已经超出本行倒数第一列,即DPLNUMBER_COL时,下一个坐标点为DPHDPH1,DPL0,否则,下一个坐标点为DPH,DPLDPL1;步骤四、如果X,Y坐标指。

21、针DPTR尚未超出倒数第一行,即DPHNUMBER_ROW,跳转本方法之步骤二,继续本次数格子量面积的工作;否,则计算被踩踏的区域的面积SR7R6R5SSQUARE,其中,SSQUARE为一个格子的面积,由行、列电极组内导线的间距决定,清零格子计数器R6R5,结束本次数格子量面积的工作。9根据权利要求1所述的防宠物踩踏式报警器及其轮廓法测量面积区分脚型的方法,其特征在于,所述轮廓法测量面积以区分脚型程序之步骤四关于数格子量面积的方法所述“查看该坐标位置是否属于轮廓的包围之中”的实施方法包括下述步骤步骤一、称当前位置为目标位置,把其X,Y坐标指针DPTR指向目标位置的左方,逐个坐标点地取出它们对。

22、应的数据,即DEC_DPL,MOVX_A,DPTR,并逐个坐标点地查看该数据是否等于FFH如果遇到等于FFH的坐标点,跳到本实施方法之步骤二,继续查看工作;如果进行到DPL0还没有遇到等于FFH的坐标点,表明目标位置没有在轮廓的包围之中,建立标志F10,结束本查看工作;步骤二、把X,Y坐标指针DPTR指向目标位置的右方,逐个坐标点地取出它们对应的数据,即INC_DPL,MOVX_A,DPTR,并逐个坐标点地查看该数据是否等于FFH如果遇到等于FFH的坐标点,跳到本实施方法之步骤三,继续查看工作;如果进行到DPLNUMBER_COL1还没有遇到等于FFH的坐标点,表明目标位置没有在轮廓的包围之中。

23、,建立标志F10,结束本查看工作;步骤三、把X,Y坐标指针DPTR指向目标位置的上方,逐个坐标点地取出它们对应的数据,即DEC_DPH,MOVX_A,DPTR,并逐个坐标点地查看该数据是否等于FFH如果遇到等于FFH的坐标点,跳到本实施方法步骤四,继续查看工作;如果进行到DPH0还没有遇到等于FFH的坐标点,表明目标位置没有在轮廓的包围之中,建立标志F10,结束本查看工作;步骤四、把X,Y坐标指针DPTR指向目标位置的下方,逐个坐标点地取出它们对应的数据,即INC_DPH,MOVX_A,DPTR,并逐个坐标点地查看该数据是否等于FFH如果遇到等于FFH的坐标点,说明该目标位置位于FFH所标记的。

24、轮廓所包围的区域内,建立标志F11,结束本查看工作;如果进行到DPHNUMBER_ROW1还没有遇到等于FFH的坐标点,表明目标位置没有在轮廓的包围之中,建立标志F10,结束本查看工作。权利要求书CN102339513ACN102339526A1/8页7防宠物踩踏式报警器及其轮廓法测量面积区分脚型的方法技术领域0001本发明涉及安防电子技术领域,特别是一种防宠物踩踏式报警装置以及一种测量随机分布的若干区域的面积的方法。背景技术00022010年7月提交国家知识产权局专利局审查的发明“防宠物踩踏式报警器及其测量面积以区分脚型的方法”借助单片机技术,以“数格子量面积的方法”检测受到踩踏的区域的面积。

25、,据此区分人与小动物的脚型,其防宠物踩踏式报警器经济、实用。但是,所述“数格子量面积的方法”没有采取措施区分被踩踏的区域,因而不能够检测、识别并测量若干块同时被踩踏的区域,其结果有可能是某几块被踩踏区域的面积之和。发明内容0003本发明的目的是提供一种防宠物踩踏式报警器及其轮廓法测量面积区分脚型的方法,所述轮廓法测量面积区分脚型的方法以所述防宠物踩踏式报警器为物理基础,采用单片机技术测量被踩踏的区域的面积,据此区分人与小动物的脚型,在受到人的踩踏时发出报警声。0004本发明实现其目的所采用的技术方案是所述防宠物踩踏式报警器由一个长方形框架、电池组、单片机系统、串入并出电路、并入串进电路、音乐电。

26、路以及轮廓法测量面积以区分脚型程序组成;其中,长方形框架的上部和底部各有一组电极,分别称之为列电极组和行电极组,每一组电极包括72根彼此独立、间距均匀、裸露的导线,两组导线排列的方向相互垂直,列电极组的导线依序分别连接到并入串进电路的各个并行输入端,行电极组的导线依序分别连接到串入并出电路的各个并行输出端,单片机系统装载有轮廓法测量面积以区分脚型程序,其输出口线P37连接到音乐电路的输入端,电池组作为本装置的电源。0005所述长方形框架的上部和底部的两组电极由该框架的两侧绝缘隔离并支撑着。0006所述单片机系统包括一块单片机及其晶振电路和上电复位电路、随机存储器电路,其中,随机存储器电路由一块。

27、74HC373和64KB的RAM组成。0007所述串入并出电路由9块74HC164级联组成第一块74HC164的信号串行输入端A连接到单片机系统的输出口线P12,其最高位输出端QH连接到第二块的信号串行输入端A,第二块的最高位输出端QH连接到第三块的信号串行输入端A,依次类推,共产生8位/块9块72位的信号并行输出端;9块74HC164的清零端与信号串行输入端B都连接到电池组的正极,它们的时钟信号输入端都连接到单片机系统的输出口线P13。0008所述并入串进电路由9块74HC165级联组成最后一块74HC165的并入串出信号端QH连接到前一块的信号串行输入端DS,依次类推,共产生8位/块9块7。

28、2位的信号并行输入端,每一位信号并行输入端还各自连接一个下拉电阻到电池组的负极,第一块74HC165的并入串出信号端QH连接到单片机系统的输入口线P15,这9块74HC165的并入数据装载控制端/PL都连接到单片机系统的输出口线P16,它们的时钟信号输入端都连接说明书CN102339513ACN102339526A2/8页8到单片机系统的输出口线P17,它们的时钟使能输入端/CE都连接到电池组的负极。0009本发明所述轮廓法测量面积区分脚型的方法包含在轮廓法测量面积以区分脚型程序中,用于区分人与小动物的脚型,其步骤如下0010步骤一、初始化单片机0011MOV_SP,2FH堆栈初值,0012C。

29、LR_P12,P13,P17,P37准备输出信号,0013SETB_P15,P16准备输入信号,0014CLR_F0初始化跟踪区域轮廓工作结束的标志位,0015步骤二、初始化程序0016CLR_R5,CLR_R6R5,R6分别为格子计数器的低字节和高字节,0017MOV_R1,AL,MOV_R2,AHRAM中后部开辟有小块临时存储区,用于存储被跟踪区域的轮廓上坐标点的坐标,AL,AH分别为该区域的起始地址之低、高字节,R1,R2分别为RAM中临时存储区地址指针的低字节和高字节寄存器,0018MOV_DPL,AL,MOV_DPH,AH0019MOV_R0,RAM0,MOV_A,00HRAM0为R。

30、AM中临时存储区的大小,0020LOOP0MOVX_DPTR,A清零RAM中临时存储区中的一个单元,0021INC_DPTR指向下一单元,0022DJNZ_R0,LOOP0R0为循环计数器,0023LOOP1MOV_R0,NUMBER_COLNUMBER_COL为列电极组中导线的数目,0024LOOP2MOV_R3,NUMBER_ROWNUMBER_ROW为行电极组中导线的数目,0025SETB_P12,NOP,CLR_P12清零串入并出电路的9块74HC164的输出端,0026DJNZ_R3,LOOP2R3为循环计数器,0027DJNZ_R0,LOOP1R0为循环计数器,0028MOV_DP。

31、H,00H,MOV_DPL,00H初始化数据指针DPTR,0029分开为两个8位的X,Y坐标指针,0030步骤三、开始扫描检测被踩踏的区域00311通过单片机对行电极组中的第一根导线输出一个高电平,然后,逐根检测列电极组中导线的电平,其低、高电平分别以00H,01H表示且存储之MOV_DPTR,00H或MOV_DPTR,01H,其中,每检测完一根列电极组导线,Y坐标指针就指向下一根列电极组导线INC_DPL,0032如果检查完毕列电极组中的全部导线,即DPLNUMBER_COL,把X,Y坐标指针指向下一根行电极组导线INC_DPH,MOV_DPL,00H;00332通过单片机对行电极组中的下一。

32、根导线输出一个高电平,然后,逐根检测列电极组中导线的电平,其低、高电平分别以00H,01H表示且存储之,其中,每检测完一根列电极组导线,Y坐标指针就指向下一根列电极组导线,0034如果检查完毕列电极组中的全部导线,即DPLNUMBER_COL,把X,Y坐标指针指向下一根行电极组导线;00353判断行电极组中当前处于高电平的导线是否超出其最后一根0036ADPHNUMBER_ROW,不是最后一根,跳转到本步骤三之2继续进行扫描检测;说明书CN102339513ACN102339526A3/8页90037BDPHNUMBER_ROW,已超出最后一根,执行下一步骤;0038步骤四、跟踪被踩踏区域的轮。

33、廓00391初始化X,Y坐标指针DPTRMOV_DPH,01H,MOV_DPL,01H;00402暂存当前X,Y坐标指针DPTR,称之为当前跟踪坐标指针,从RAM取出并查看当前位置的数据MOV_A,DPTR0041A如果该数据为00H,执行步骤五;0042B如果该数据为01H,查看位于当前坐标位置的上、右、下与左方的四邻DPHDPH1,DPL、DPH,DPLDPL1、DPHDPH1,DPL与DPH,DPLDPL1处的四个数据,即按照跟踪区域轮廓的规则获取与行、列电极组导线被踩踏所致接触的区域对应的轮廓;0043然后,运用“数格子量面积的方法”,获得被踩踏区域的面积SR7;0044如果被踩踏区域。

34、的面积SR7AREA,AREA为某个预定值,就判断为受到人的脚的踩踏,并发出警报信号SETB_P37,延时约十秒,再撤除该报警信号CLR_P37;执行步骤五;0045步骤五、恢复当前X,Y坐标指针DPTR为当前跟踪坐标指针,把它指向下一个坐标点如果当前坐标点已经处于本行最后的位置,即DPLNUMBER_COL1时,下一个坐标点为DPHDPH1,DPL1,否则,下一个坐标点为DPH,DPLDPL1;0046步骤六、如果X,Y坐标指针DPTR尚未指向最后一行,即DPHNUMBER_ROW1,跳转本步骤四之2,继续跟踪被踩踏区域的轮廓,否,则结束跟踪被踩踏区域轮廓的工作;0047步骤七、跳转到步骤一。

35、,开始新的一轮扫描检测工作。0048上述步骤四中所述跟踪区域轮廓的规则包括00491被跟踪区域的特征是“被跟踪区域内的每一个坐标点都对应着数据01H,需要被跟踪的区域之外或需要被跟踪的区域之间的坐标点都对应着数据00H”;00502启动跟踪轮廓定时器,如果该定时器的计时时间到了预定的数置,复位单片机;00513当前坐标位置对应的数据为01H,查看当前坐标位置的上、右、下与左方四个邻点对应的数据的关系,决定当前坐标位置的移动方向,该移动方向经过的路径就形成该区域的轮廓,有关移动当前坐标位置的规则如下0052A如果其右方邻点对应的数据为01H,其上、下、左方邻点对应的数据都为00H,就把当前坐标位。

36、置移向其右方邻点处;0053B如果其下方邻点对应的数据为01H,其上、右、左方邻点对应的数据都为00H,就把当前坐标位置移向其下方邻点处;0054C如果其左方邻点对应的数据为01H,其上、右、下方邻点对应的数据都为00H,就把当前坐标位置移向其左方邻点处;0055D如果其上方邻点对应的数据为01H,其右、下、左方邻点对应的数据都为00H,就把当前坐标位置移向其上方邻点处;0056E如果其右、下方邻点对应的数据都为01H,其左、上方邻点对应的数据都为00H,就把当前坐标位置移向其右方邻点处;0057F如果其下、左方邻点对应的数据都为01H,其上、右方邻点对应的数据都为说明书CN102339513。

37、ACN102339526A4/8页1000H,就把当前坐标位置移向其下方邻点处;0058G如果其左、上方邻点对应的数据都为01H,其右、下方邻点对应的数据都为00H,就把当前坐标位置移向其左方邻点处;0059H如果其上、右方邻点对应的数据都为01H,其下、左方邻点对应的数据都为00H,就把当前坐标位置移向其上方邻点处;0060I如果其上、下方邻点对应的数据都为01H,其右、左方邻点对应的数据都为00H,且其由其左方邻点移动而来,就把当前坐标位置移向其上方邻点处;0061J如果其上、下方邻点对应的数据都为01H,其右、左方邻点对应的数据都为00H,且其由其右方邻点移动而来,就把当前坐标位置移向其。

38、下方邻点处;0062K如果其右、左方邻点对应的数据都为01H,其上、下方邻点对应的数据都为00H,且其由其上方邻点移动而来,就把当前坐标位置移向其右方邻点处;0063L如果其右、左方邻点对应的数据都为01H,其上、下方邻点对应的数据都为00H,且其由其下方邻点移动而来,就把当前坐标位置移向其左方邻点处;0064M如果其上方邻点对应的数据为00H,其余三个邻点对应的数据都为01H,就把当前坐标位置移向其右方邻点处;0065N如果其右方邻点对应的数据为00H,其余三个邻点对应的数据都为01H,就把当前坐标位置移向其下方邻点处;0066O如果其下方邻点对应的数据为00H,其余三个邻点对应的数据都为0。

39、1H,就把当前坐标位置移向其左方邻点处;0067P如果其左方邻点对应的数据为00H,其余三个邻点对应的数据都为01H,就把当前坐标位置移向其上方邻点处;0068Q如果当前坐标位置的上、右、下与左方四个邻点对应的四个数据都是00H,四个邻点中也没有出现本跟踪区域轮廓过程所获得的最前面的5个位置坐标之一,这时,尝试退出该“奇异的隅角”把当前坐标位置对应的数据置为00H,从RAM内的临时存储区取出最后存进去的坐标值,把该坐标值赋予当前坐标位置指针即DPH,DPL,也就是退回到前一个位置的坐标处,然后,按照上述跟踪区域轮廓的规则继续跟踪下一个曲线轮廓点,如果能够找到下一个曲线轮廓点,就继续跟踪区域轮廓。

40、的工作,否则,所遇到的“奇异的隅角”表明不存在封闭、连续的轮廓曲线,即没有形成被踩踏的区域,这时,清零RAM内的临时存储区,初始化RAM中临时存储区地址指针寄存器R1,R2,设置跟踪区域轮廓工作结束的标志位SETB_F0,结束本轮跟踪区域轮廓的工作;0069R如果当前坐标位置的上、右、下与左方四个邻点对应的四个数据都是00H,四个邻点中出现了本跟踪区域轮廓过程所获得的最前面的5个位置坐标之一,这时,清零RAM内的临时存储区,初始化RAM中临时存储区地址指针寄存器R1,R2,设置跟踪区域轮廓工作结束的标志位SETB_F0,结束本轮跟踪区域轮廓的工作;00704每次移动当前坐标位置之前,根据RAM。

41、中临时存储区地址指针寄存器R1,R2把当前位置的坐标DPH,DPL依序存储在RAM内的临时存储区,然后使得RAM中临时存储区地址指针寄存器R1,R2指向下一处存储单元;00715每次移动当前坐标位置之前,把当前坐标位置对应的数据改写成FFH;00726上述诸规则中,所述数据00H与非01H的其它数据等效。说明书CN102339513ACN102339526A5/8页110073上述步骤四所述数格子量面积的方法包括下述步骤0074步骤一、初始化X,Y坐标指针DPTRMOV_DPH,00H,MOV_DPL,00H;0075步骤二、从RAM取出并查看当前位置的数据MOV_A,DPTR,0076A如果。

42、该数据不等于01H,跳到本方法之步骤三;0077B如果它等于01H,先查看该坐标位置是否属于轮廓的包围之中0078否,则跳到本方法之步骤三;0079是,则查看当前坐标位置的正下方DPHDPH1,DPL、左下角DPHDPH1,DPLDPL1两处的数据是否等于01H或FFH,是,则格子计数器R6R5加1;还要查看当前坐标位置的右邻DPH,DPLDPL1对应的数据是否等于01H0080是,跳转本方法之步骤三,0081否,进一步查看当前坐标位置的正下方DPHDPH1,DPL、右下角DPHDPH1,DPLDPL1两处的数据是否等于01H或FFH,是,则格子计数器R6R5也加1;0082若当前坐标位置位于。

43、边上的第一行、第一列、最后一行或最后一列,则当前坐标位置的正下方、左下角、右邻与右下角在RAM中没有相应的数据,此时其坐标的特点是DPH0、DPL0、DPHNUMBER_ROW或DPLNUMBER_COL,权当这些坐标点处的数据为00H;0083步骤三、X,Y坐标指针DPTR指向当前坐标位置的下一个坐标点如果当前坐标点已经超出本行倒数第一列,即DPLNUMBER_COL时,下一个坐标点为DPHDPH1,DPL0,否则,下一个坐标点为DPH,DPLDPL1;0084步骤四、如果X,Y坐标指针DPTR尚未超出倒数第一行,即DPHNUMBER_ROW,跳转本方法之步骤二,继续本次数格子量面积的工作;。

44、0085否,则计算被踩踏的区域的面积SR7R6R5SSQUARE,其中,SSQUARE为一个格子的面积,由行、列电极组内导线的间距决定,清零格子计数器R6R5,结束本次数格子量面积的工作。0086上述步骤四所述数格子量面积的方法之步骤二所述“查看该坐标位置是否属于轮廓的包围之中”的本实施方法包括下述步骤0087步骤一、称当前位置为目标位置,把其X,Y坐标指针DPTR指向目标位置的左方,逐个坐标点地取出它们对应的数据,即DEC_DPL,MOVX_A,DPTR,并逐个坐标点地查看该数据是否等于FFH0088如果遇到等于FFH的坐标点,跳到本实施方法之步骤二,继续查看工作;0089如果进行到DPL0。

45、还没有遇到等于FFH的坐标点,表明目标位置没有在轮廓的包围之中,建立标志F10,结束本查看工作;0090步骤二、把X,Y坐标指针DPTR指向目标位置的右方,逐个坐标点地取出它们对应的数据,即INC_DPL,MOVX_A,DPTR,并逐个坐标点地查看该数据是否等于FFH0091如果遇到等于FFH的坐标点,跳到本实施方法之步骤三,继续查看工作;0092如果进行到DPLNUMBER_COL1还没有遇到等于FFH的坐标点,表明目标位置没有在轮廓的包围之中,建立标志F10,结束本查看工作;0093步骤三、把X,Y坐标指针DPTR指向目标位置的上方,逐个坐标点地取出它们对应的数据,即DEC_DPH,MOV。

46、X_A,DPTR,并逐个坐标点地查看该数据是否等于FFH0094如果遇到等于FFH的坐标点,跳到本实施方法步骤四,继续查看工作;说明书CN102339513ACN102339526A6/8页120095如果进行到DPH0还没有遇到等于FFH的坐标点,表明目标位置没有在轮廓的包围之中,建立标志F10,结束本查看工作;0096步骤四、把X,Y坐标指针DPTR指向目标位置的下方,逐个坐标点地取出它们对应的数据,即INC_DPH,MOVX_A,DPTR,并逐个坐标点地查看该数据是否等于FFH0097如果遇到等于FFH的坐标点,说明该目标位置位于FFH所标记的轮廓所包围的区域内,建立标志F11,结束本查。

47、看工作;0098如果进行到DPHNUMBER_ROW1还没有遇到等于FFH的坐标点,表明目标位置没有在轮廓的包围之中,建立标志F10,结束本查看工作。0099本发明的优点是,按照行、列两电极组导线的排列建立二维坐标系,借助单片机就可以扫描检测被踩踏的区域、逐块跟踪它们的轮廓、对轮廓内区域数格子算面积、判断脚型并决定是否发出报警声;所述测量面积的方法针对一块一块被踩踏的区域,适用于防盗报警工作。附图说明0100下面对照附图进一步具体说明本发明。0101图1是本发明的结构示意图。0102图2是单片机系统的原理图。0103图3是串入并出电路的原理图。0104图4是跟踪区域轮廓的规则的示意图,包括情形。

48、AR;其中,每一种情形的中心为当前坐标位置,虚线箭头表示当前位置的来源方向,实线箭头表示当前位置的移动方向,数据0与其它非1的数据等效,情形Q表示跟踪轮廓过程中可能遇到的“奇异的隅角”,情形R表示跟踪轮廓过程的结束条件,其中的R7表示本跟踪区域轮廓过程所获得的最前面的5个位置坐标之一。0105图5是并入串进电路的原理图。0106图6是应用跟踪区域轮廓的规则的例子,其中,A是跟踪区域轮廓的起始点,B是“奇异的隅角”,D是跟踪区域轮廓的终止点。0107图中,1长方形框架,11长方形框架1的侧面宽,12长方形框架1的侧面长,13长方形框架1底板上的行电极组,14位于长方形框架的上部的列电极组,141。

49、目标区域I,142跟踪第一个目标区域的轮廓的起始点,143跟踪目标区域轮廓的行扫描检测方向,144跟踪目标区域I获得的轮廓,212974HC164,313974HC165。具体实施方式0108本发明包括一个长方形框架1、电池组、单片机系统、串入并出电路、并入串进电路、音乐电路以及轮廓法测量面积以区分脚型程序。0109长方形框架1如图1所示,其上部和底部各有一组电极14和13,分别称之为列电极组和行电极组,每一组电极由72根裸露的金属导线组成,这些导线彼此独立,间距均匀,两组电极14和13的导线排列的方向相互垂直不作严格要求,由框架1的两侧11或12绝缘隔离并支撑着,整个长方形框架的外部包裹着绝缘材料,外形似踏脚垫。说明书CN102339513ACN102339526A7/8页130110单片机系统如图2所示,图中没有画出单片机的上电复位电路和时钟电路。假设行、列电极组各有256根导线,会产生25625665536个交叉点,每个交叉点有两种状态分离或接触,而64KB6410246421065536,因此,需要扩展64KB片外RAM,其中。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 物理 > 信号装置


copyright@ 2017-2020 zhuanlichaxun.net网站版权所有
经营许可证编号:粤ICP备2021068784号-1