一种操控笔尖三维运动的手写字迹模仿方法_2

文档序号:9374854阅读:来源:国知局
F = F0*R触摸 /R标准
[0043] 当书写在触摸屏上压力增大时,F也相应增加。所以通过F的大小相对控制写字 机写字时的z轴,设定字迹
[0044] High = F-F0/F
[0045] High作为z轴标志位,供给以后的z轴向电机算法代码使用。
[0046] 在系统识别χ-y轴的汉字位置信息之后,则对应计算完成平面运动的两个步进电 机的运动指令,例如"一"手写汉字不会是一条直线,而稍带有倾斜度,这时判断汉字的像素 长度 xl,yl° 设定 speedx,speedy。
[0047] 令
[0048] xl/yl = speedx/speedy
[0049] 得出平面两个电机的运行速度比,此时令zl = High,当书写力度均匀时,zl = 0, 表明其在水平面上机械运动,当Zl>0时,其运动方式为重笔,Zl〈0为轻笔或笔画的末端笔 尖尚开直面。
[0050] 系统在识别完字体之后,会将相应电阻屏上显示的笔画转化成步进电机的控制代 码,此部分为cpu代码控制部分:其代码为:
[0051] int f=30?, k^lOG, Q=O, a, b ; float j'; void main() DisableIn ter rup t s:; Motor^initO ; //电机初始化.. pit Jnit (PIT1, 5) ; //定时器初始化,用于检测笔画数量 gpio_init(PORTC, i, GPI, 0) ; /7设置中断引脚为输入 for (a~0;; i<=q; i++) {
[0052] for (b=0;i<=6-:1++) //将每个笔画分为7段来书写 pitjnit (FIT0, 6); /7定时器初始化 EnableInterrupts; } v〇:i:d Ρ?Τ1-ISRO { nS i;;: PIT^TFLG (PITO) I =PIT_TFLG_TIF_MS:K:; State= gpio_get (PORTC, 0) ; //获取引脚状态 for (b=0; i<=40; i++) /7单字最大笔画不超过40 If(State) { q++:; //测定笔画数 } } void PIT0_rSR(} j=i*yl/xl; //y轴电机控制脉冲 k=.k-high://z轴电机控制脉冲 PIT JTFLG (PITS) j -ΡΤΤ_1ΡΙ〇ΙΡJiASK; speed-set (&Motor-x, i) ; /7.給.电机赋相应占空比 speed-set(&Motor-y, j); speed一set: (&Motor-z, k);
[0053] 机械结构由互相垂直的三个支架以及能够控制的步进电机及相应履带构成,三维 的运动构架能很好实现笔锋的抑扬顿挫以及笔画之间的停顿。其原理是控制三个步进电机 的协调运动,其中对X轴和y轴的控制由手写电阻屏上采集到的手写汉字的笔画位置信息 确定,而对于Z轴的控制则由书写时触摸电阻的阻值确定。以至于再次执行汉字书写命令 时书写出与识别汉字高度相仿的字体。三维六轴模型如图2所示
[0054] 其中我们选定 cpu 的 P0RTA0, P0RTA1,P0RTA2, P0RTA3, P0RTA4, P0RTA5 为 FTMO 的 CH5, CH6, CH7, CH0, CH1,CH2设置为步进电机的PffM输出;执行机构采用步进电机,步进电 机驱动器采用大创LV8731驱动模块,主要是在驱动步进电机的过程中能实现PffM控制,对 于三个电机控制起来相对简单。
[0055] 通过以上代码对三个步进电机的控制,系统则能够进行模仿手写汉字的书写。
[0056] 本发明主要是通过操作者在XPT2046手写电阻屏上进行书写汉字,系统cpu会识 别对应的书写坐标点与笔尖的压力,记录每个笔画的坐标位置与相应压力。对坐标数据进 行处理,转化成步进电机控制代码。每个汉字都有其对应的步进电机控制代码,x-y轴的步 进电机实现字型的书写,z轴的步进电机实现笔锋的处理。在一个三维的空间里书写汉字 精度能够做到更高。这就是整体的手写字迹模仿系统,可以用在自动写字机中,增加仿字迹 的功能。
[0057] 本发明主要是完成手写字迹的高度模仿,通过硬件电路方面,机械结构方面以及 模仿字体的软件编码,可以应用于自动写字机,雕刻机等。现有的写字机,雕刻机虽然能够 写出一手方正的好字,但是却不能够仿照人们的笔记进行书写,在一定的场合中能够写出 与操作者笔迹相仿的字迹是非常必要的。
[0058] 在发明过程中应用了 XPT2046电阻屏以及步进电机的驱动算法,硬件电路上采用 单片机控制步进电机的方式来作为驱动整体的运动。机械结构上应用了与3D打印机类似 的六轴机械结构,是对控制以及机械知识的融合,意在使打印机在实现仿字迹的基础上做 到精度更高。
[0059] 本发明的关键技术是在于实现字迹模仿的系统。利用电阻屏采集操作者笔尖的运 动轨迹,对采集到的数据进行处理得到相应汉字的步进电机控制代码。在整体设计方面,利 用新型的六轴机械结构,用三个步进电机控制笔尖在在三维的空间里运动,实现通过调动 步进电机完成与字指令。
【主权项】
1. 一种操控笔尖三维运动的手写字迹模仿方法,其特征在于,包括如下步骤: (1) 当触摸屏上有压力挤压时变为低电平,根据引脚的电平状况分辨出电阻屏上是否 正在写字: (2) 如果有触摸事件发生,则cpu通过SPI 口,发送读取X坐标的命令0X90,然后读出 两个字节的数据; (3) 发送读取Y坐标的命令OXDO之后再读取两个字节的数据; (4) 点击触摸屏的四个角,得到四组数据,分别是X,Y坐标的最大值和最小值: X = 3. 75/(U-UO)+xl y = 3. 75/(U' -UO^+yl ; (5) 测量X面的面电阻Rx,Y面的面电阻Ry,触摸屏两附加板之间的测量值zl,由上一 步得出的X轴的坐标值XI,y 1,代入公式 R触摸=Rx ? xl/4096(4096/Zl-l)-Ry(l-yl/4096) 计算出R触摸,设定标准压力FO F = F0*R触摸/R标准; (6) 通过F的大小相对控制写字机写字时的z轴,设定字迹 High = F-F0/F High作为z轴标志位,供给以后的z轴向电机算法代码使用; (7) 判断汉字的像素长度xl,yl,设定speedx,speedy,令 xl/yl = speedx/speedy 得出平面两个电机的运行速度比,令zl = High,当书写力度均匀时,zl = 0,表明其在 水平面上机械运动,当zl>0时,其运动方式为重笔,zl〈0为轻笔或笔画的末端笔尖离开直 面; (8) 系统在识别完字体之后,会将相应电阻屏上显示的笔画转化成步进电机的控制代 码,此部分为cpu代码控制部分。
【专利摘要】本发明涉及基于XTP2046电阻屏的操控笔尖三维运动的手写字迹模仿方法。具体包括:当触摸屏上有压力挤压时变为低电平,根据引脚的电平状况分辨出电阻屏上是否正在写字:如果有触摸事件发生,则cpu通过SPI口,发送读取X坐标的命令0X90,然后读出两个字节的数据。手写字迹模仿方法可以手写出字迹相仿的字体,日本的写字机能够写出优美方正的字迹,但是不能够模仿操作者的字迹,在一些情况下与打印机无异。但是如果具备仿字迹系统,就能够识别出操作者的字迹,在结构上应用三维六轴机械结构来控制三个轴向的运动,在对于笔尖精度的控制上进行了提升。
【IPC分类】G06F3/0346
【公开号】CN105094378
【申请号】CN201510447946
【发明人】马忠丽, 王言畅, 迟泰宇, 李款, 徐海燕, 王峰, 逯佳鑫, 刘烈
【申请人】哈尔滨工程大学
【公开日】2015年11月25日
【申请日】2015年7月28日
当前第2页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1