(检测技术与自动化装置专业论文)绣花机电控系统花样的代码分析与实现.pdf_第1页
(检测技术与自动化装置专业论文)绣花机电控系统花样的代码分析与实现.pdf_第2页
(检测技术与自动化装置专业论文)绣花机电控系统花样的代码分析与实现.pdf_第3页
(检测技术与自动化装置专业论文)绣花机电控系统花样的代码分析与实现.pdf_第4页
(检测技术与自动化装置专业论文)绣花机电控系统花样的代码分析与实现.pdf_第5页
已阅读5页,还剩59页未读 继续免费阅读

(检测技术与自动化装置专业论文)绣花机电控系统花样的代码分析与实现.pdf.pdf 免费下载

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

绣花机电控系统花样的代码分析与实现 南京理工大学硕士学位论文 abs tract 丁 五 e pe rfonnan c e ofth e com p u t e ri 双 刃e m b r o i d ery m a c hi n e 。 山 es山 月 免 r e ll t c o n 枉 。 l on di ffi 此n t c 闻esinthe p a tt e mfi le , sothe s t u d y ofthe p a tt e mfi leisthe b as e ofd es i gnin g 伪m p u t 面z e d 。 叮 b ro l d e r y 百 ia c hine c on汀 o l sy s t e m . 叨 l i s p a p 改 is p artw o rkofd e s l g m n g the con trol sy s t e mofthe e m b roid 呷 功 a c hin e, w h i chisb as edof a r m 920 t + u nux 阅广 , , th e w 。 止of血s p a 侧 贫 are the anal y s isofthe p a 往 e mfi le , the n 绍 已 甘 c h ofthe i n g ofthe p at t 。 力fil e , the otherp art w o rkisthe d es i gn ofthe con tr o 1 in t e ri 触 c e ofthe e m b r o i d 叮 m和 曲石 ” e on the b as isofu n d 日 rs 栩 口 d i n gthe p 双 兄 es s of e m b ro i d 团n g an dcrea t i n gd i 示 此 n t 允 助以 t oft h e p a 仆 巴 刀 fil e u s u l g the e m b ro i d e ryc a d , the t ool ofdi sk成t and p r o g 翅 mare u s 比 inan al y z i n g the 钾肠 . 刀 . 丁 h e w o 比on the p a t t 。 刀s u c h asd s b 、 d st、 d s zwas 五 正 sh edadd th e e m u l a to r i s d o n e , the ri ght ofresult is c on fi 口 以 月 . 了 b e e m b ro i d e rypi 叻 15 叨d e 路 t 以 劝an dthe 五 习 m e ofn 级 lj za 6 on of the p a tt 。 刀句 氏the s 妞 刀 c tu reof d es i gni n g p at telnisc ons i d erlth e 此 目 i za t i on ofp a tt ern isinves ti g at ed, 山 e p a 讹mc o m e lrue . t 七 e des i gn ofthe c o m p u t 幼双 刃.b 功 i d ery 叹 ia c hi n e has man 一 mac h i n e conv e n 以 ti o n in t er fa ce , the p artofassi s “ 口 t m ana g e m ed e l isd es i gnedu sing the so ft w . 旧qt 了 h e p a 朋 e 改 15喊 inlhis m ode l be fo rethe r u 印 山 n g oflr 口 c h 的 e and the m 山 n t e n an ceofthe con tro1 s y s 记 m , 脉 c 佣1 m e s s ofthe d es i gnisc o n fi rr 山 刃 , k e y w ords : c o . lp u te ri ze d e m b ro idsrym ac hi n e , p a tt e 巩 qt 声明 本学位论文是我在导师的 指导下取得的 研究成果, 尽我所知, 在本 学位论文中, 除了 加以 标注和 致谢的部分外, 不包含其他人已 经发表或 公布过的 研究成果, 也不包含我为获得任何教育机构的学位或学历而使 用过的材料。 与我一同工作的同 事对本学位论文做出的贡献均已 在论文 中作了明确的说明。 研究生签名 :年月日 学位论文使用授权声明 南京理工大学 有权保存本学位论文的电子和纸质文档, 可以 借阅或 上网公布本学 位论文的部分或全部内容, 可以向 有关部门 或机构送交并 授权其保存、 借阅 或上网公 布本学位论文的 部分或全部内 容。 对于保密 论文,按保密的有关规定和程序处理。 研究生签名 :年月日 南京理工大学硕士学位论文 绣花机电控系统花样的代码分析与实现 第一章 绪论 l l电 脑绣花机概述 我国的传统 工艺 刺绣在世界上 拥有较高的声 誉, 深受国内 外人民的喜爱, 近年来 刺绣产品越来越受欢迎, 市场需求越来越大。同时, 我国已经发展成为立足国内面向 世界的纺 织、 服装产业大国, 随 着市场经济的 发展, 很多传统的生 产布料的 纺织企业 由于利润 越来越低, 迫使他们寻找新的利润增 长点, 很多纺织企 业都把利润增长点放 到了 绣花上。 在强大的 市场需求下, 作为服装产业的附属产业 之一的 刺绣业也兴旺发 达 起来。 无论是国内 市场 还是国 际市场, 对电 脑绣花机的需求都 急剧增加, 这为电 脑 绣 花机行业的 发展提供了机 遇。 l l i电 脑绣花机的 工作原 理 电 脑绣花机最早于 上世纪70年代在国外兴 起, 是随 着计算机技术 和精密机械的 发 展 而逐渐发展、 成熟起来的 一种自 动化刺绣设备11 。目 前世界上著名的电 脑绣花机品 牌有日本田岛( t ajima ) 公司、百灵达(ba r u d a n ) 公司、兄弟(br o t h e r ) 公司, 德国蔡斯克( 留k)公司, 美国的美科( me l c o ) 等。 通过消化吸收国 外各 种先进机型 的优点, 结 合我国 刺绣、 服装 行业的 特点, 我国 在上世纪八十年 代末研制出国 产的电 脑绣花机。目 前国内 生产绣花机的 企业许多, 主要有深圳的富怡、 北京的 北方天鸟, 武 汉的美 佳、 浙江的飞亚 等。 随 着科学技术的不断发展, 加上各 绣花机生产企业 研发 能力的增强,国产绣花机的技术水平也在不断地提高。但是对比国外公司的产品,国 产 绣花机虽然产量巨 大, 但是市场占 有率并不高, 主要原因是国 产绣花机主要 集中 在 一 些中 低档产品, 整机质量和性能与国外 产品 相比 有一 定的差距, 主要 表现在 平均无 故障时间, 刺绣效 果, 主 轴转速, 机器噪音等方面, 例如, 美国 美科公司的某 型号绣 花机主轴最高转速达到1 5 00转每分钟, 而某国产品牌绣花 机最高 转速只能达到 8 50转 每 分钟, 仅这一项指标两 者效率相差近一倍12 。 电 脑绣花机是根 据保 存在绣花机中的花 样来 刺绣的。 花样 需先由打 版师 利用刺绣 打版软件设计花稿, 保存成特定格 式的 花样文件后, 通过网络、 磁盘 或u 盘等媒介存 入绣花机。 电 脑绣花机是以微处理 器为 控制核心将花样进行处理, 在 程序控制下将花 样坐标值转换成与绣框x 、 y 方向 位移量相当的电信号, 送到电机 控制器进行x ( 步 进) 、 y ( 步进 ) 、 2 ( 主轴伺服) 电 机升降 速处 理后, 输出 控制信号,带 动绣框完成x 、 y 方向的进给运动;同时驱动2 主轴步进电机,带动绣针作上下运动,从而使刺绣连 绪论 南京理工大学硕士学位论文 借数字化的绣花设 计,以 及矢量美工、自 动 编针、 刺字图 案等完美的 打版技术优势, 得到了 市场上众多用 户的 广泛好评并占 据了国内 绝大 部分 市场。图1 . 4 为 刺绣打 版软 件的 整体流程图 门 阁 。 图1 .4刺绣打 版软件整体流程图 刺绣 打版软件的主要功能突出了 计 算机在绣花自 动编针、 花样设计编辑完善等方 面比人工实 现更方便、 快速、准确的 优势。 打版软件中的花 样显 示都是基于矢量图。 计算机中显示的图 形一般可以 分为两大 类 矢量图和位图。 位图是 象素集合。 矢量 图使用直线和曲 线来描述图 形, 这些图 形的元素是一 些点 、 线、 矩形、 多边形、圆 和 弧线等, 它们都是通过数学公 式计算 获得的, 本质上是多 个数 学表达式的 编程语言 表 达。 例如, 一幅 花样的 矢量图 形实际上是由 线段形成外框轮廓, 由 外框的 颜色以 及外 框所封闭的颜色决定花 样显 示出的 颜色。 由 于矢量图形 可通过公式计算获得, 所以 矢 量图形文件体积一 般较小。 矢量文件中的图 形元素称为 对象, 在刺绣打版软 件中 对象 就是绣段。 每个对象都是一个自 成一 体的 实体, 它具 有颜色、 形状、 轮廓、 尺寸、 屏 南京理工大学硕士学位论文 绣花机电控系统花样的代码分析与实现 幕 位置 等属性。 既然 每个对象都是一个自 成一 体的 实体, 就可以 在维持它原有的 清晰 度和弯曲度的同时, 多次移动和改变它的属性,而不会影响图形中的其它对象。 可以 把 矢量图 理解为 一个 “ 形状” , 比 如一个圆, 一个抛物 线等等, 因 此缩放不会影响 其 质量。 矢量图形 最大的优点是无论 放大、 缩小或旋转等 都不 会失 真; 最大的 缺点 是难 以表现色彩层次丰富的逼真图像效果。 画矢量图的时候如果速度比较慢, 你可以看到 绘图的 过程, 许多 刺绣打版软件中 有延 迟显示当 前花稿的功能. 矢量图一般用来表达 比较小的图像, 移动、缩放、旋转、拷贝和改变属性都很容易,一般用来做成一个图 库。 例如, 刺绣打版软件之 外的 很多 软件里都有矢量图 库, 用户把它拖出来任意画 多 大。 1 3本文研究内 容 本文的研究内容以电 脑刺绣机电 控系统软件 开发项目 为背景。 根据电 脑绣花机电 控系统功能模块的划分 和项目 的实际需要, 本人完成其中部分工作。 本文主要内 容如 下: 第一章:绪论 本章主要介绍了电脑绣花机的工作原理和刺绣打版软件的功能。 了解电脑绣花机 的工作原理和刺绣打版软件有助于对花样文件的理解。 第二章:电脑绣 花机电 控系统整体方案 本文是电脑绣花机电控系统软件研发项目中的部分工作, 因此本章从程序设计的 角 度简单 介绍电 脑绣花机电 控系统。软 件的 开发环境 是 代 d h a tg .0自 带的图 形用户界 面开发软 件q 6 . 1 ,因 此介绍了qt编程软 件,主 要讨论qt 的 工作机制和程序运行步 骤。 第三章:花样文件代码分析 各种格式花样的正确理解对电 脑绣花机运动控制代码的翻译和控制界面的花样 显 示至 关重要。 例如, 界面 部分的内 存花样管理和 磁盘操作, 根据花样文件中 的不同 代码进行主控部分电机的控制. 本章主要分析d s b ( 百 灵达二进制) 、 d s t ( 田岛 三进制) 和d s z花样格式各自 包 含的 控制信息, 理解其代 码包含的 意义; 为了 验 证其正确性还进行了仿真, 将仿真结 果和刺绣打版软件的显示进行比较。 第四章:花样文件生成设计 在刺绣打版软件中花样文件的生成是由打版师选择不同的针法和设置相应针法 的不同属性进行设计、 编辑实现的。 本模块参照刺绣打版软件中的花样文件生成过程, 理解和实现相关的针法, 实 现花样生成过程中需要 的一些常用针法类和 相应数据结构 的构造, 完成了 多种格式 花样文件的实现。 5 绪论 南京理工大学硕士学位论文 第五章: 辅助管 理模块 人机界面设 计 参数设定界面是绣 花机的 人机界面中的 重要组成部分, 本 章在u n ux操作系统下 利用qt 软件开发满足 系统 要求的 人机界面。 对绣花机进行正确 控制的 许多参 数都是 在这一模块实现修改和 保存. 本章工作的完成 涉及qt界面设计的相关知识. 南京理工大学硕士学位论文 绣花机电控系统花样的代码分析与实现 第二章 电 脑绣花机电 控系统整体方案 本文所做的 编程工作是运用 代 刘 h al 夕 .0自 带的图 形用户界面开发软件q t3 . 1 完成 的, 本章 主要简介qt 的工作机制 和程序运行步骤。本文 是设 计电 脑绣花机电 控系统 中的部分工作,从程序设计的角度简单介绍了电脑绣花机电控系统项目。 2. 1开发工具qt 简介 u n ux操作系 统已被 广泛地使用到pc 和各种嵌入式设备。目 前主流的u nux 窗 口 系统有:pc 上使 用的 基于开放源代码的gno me 和 k d e 、嵌入式设备上使用的开 放源代码o p i e 和c 伴,以 及一些商业 化的 版本( 如m o t o ro 妞的pda窗口系统) 。 qt 是 基 于 面 向 对 象 的c 什的gui 界 面 开 发 工 具 , 另 外 还 提 供 了kde v e l叩和q d es ign er d e图形 界面开 发环境。由 于qt 具有面向 对象、 技术成熟等优点,目 前高端嵌 入式 设备几乎都选 择qt 作为开 发工具。 2 1 i qt 简 介 qt是一个多 平台 的c 什图形 用户界面库,由 挪威rn 11 1 e c h 公司出品,目 前包括 qt、 基于e 旧 m e b u ffer 的qt e m h 川 d ed、快速开发 工具qt d es i gner 、国际 化工具qt n g u ist 等 111 1 。 q t 提 供 程 序开 发 者 用 于 建 立 艺 术 级的 图 形 用 户 界 面 所 需的 所 有 功 能 。 qt 是完 全面向 对象的, 很容易扩展且允 许真 正的 组件编程。基本 上, qt和v 石 n d ows 平台上的m fc 是同 类型的东西, 但是qt具有下列优点: 1 、优良的跨平台特性和可移植性 一个产品的目 标一定是吸引 尽可能 多的用户,让用 户有机会购买和使用, 因此, 最好的 方法是采用一个既适用u n ix又适用win d o w s 的支持多平台的g u i 工具包, qt恰好满足要求。 qt 支 持下列 操作系统: 珑.so ft 钻ndows z 侧 洲 ) , 珑croso ft w i n d o w s n t ,u n ux, s o l a ri s , s un0 s , f r ee b s d , b s d 1 0 s ,s c o , a i x 等. 2 、面向 对象 qt是 一 个 创 建c u i 的 类 库, 它 具 有c k p 的 所 有特 性 。 qt的良 好 封 装机 制使 得 它的模块化程度非常高,可重用性较 好, 方便用户开 发。 qt 提 供了一 种称为 信号和 槽(signal 澎 s l ots) 的 类型安 全的通讯 方式来替代回调(c all b 毗 ) ,这使得各个元件之间 的协同工作变得十分简单。 3 、丰富的a p i 方便用户使用 qt 包括多达250 个以 上的c +类, 还提供基于模板的co l l ec d ons , sen aliza t i on, 7 电脑绣花机电控系统整体方案南京理工大学硕士学位论文 file, 如 d ev ice , d irecto 口 呻 a g elnen t , 山 t。 七 m e 类。 4 、大量的开发 文档 你r e fe 化 n 邝d oc u m e n t (qt参 考 文 档 ) 是 使qt变得 流 行的 原因 之 一。 当 用 户 需 要 查找库中 的某些内容时, 它是一个好 帮手, 它详细介绍了qt 的 相关知识, 例如, 所 有的封装类及其 相关函 数的 使 用、 q t 教程提供了许多 实例供用户参考。 2. l z q t 的 信 号 和 槽 . 机 制 用 户 交 互 是 所 有g u i ( g 口 p hi 回u ser功 ter fa c e ) 应 用 程 序 关 心 的 问 题 , 通 过 将 应 用 程序和用户某种事 件联 系起来, 使用户能够在图 形界面中 只使用鼠 标来控制 程序。 许 多g u i 工具包使 用回 调函 数创建 用户交互,回调函数比 较复 杂,容易 混淆。 回调是 指一个函数的指针, 如果程序员希望一个处理函数连接一些事件,可以把另一个函数 的指针传递给处理函数。 处理函数在适当的时候会调用回调函数。 采用回调方式实现 对象间的 通讯主要有两 个缺点: 首先, 回调函数不是类型安 全的, 我们不能 确定处理 函数使用了正确的参数来调用回调函数; 第二, 回调函数和处理函数间的联系非常紧 密,因 为处理函数必须知 道要调用哪个回调函 数. qt 部件与 用户的 交互方式不同 于 其它 c u i 工具 包, 它使用 “ 信号 和槽” 机制,只需一行代 码就能 将用户事 件和应用 程序连接。 “ 信号和槽” 机制是盯 的一 个中 心特性, 用于实 现对象间的通讯。 “ 信号和槽” 机制就是: 当一个特定的事件发生时, 一个或几个被指定的信号被发送, 槽就是一个 返回值为 v 0 1 d的函 数, 如果 存在 一个或几个槽 和该信号 相连接, 那在该信号被发送 后, 这个( 些) 槽( 函 数) 就会立刻 被执行。“ 信号 和槽”机 制是 类型安 全的, 一个信号 的签名 必须与它的 接收 槽的 签名 相匹 配, 这样编译 器就 可以帮 助程序员检查类型是否 匹配。 实际 上一个槽的签名可以比 它接收的 信号的签名少, 因为 它可以 忽略额外的签 名。 信号 和槽是很宽松的 联系 在一起的, 一个发 送信号的 对象不 用考虑哪个槽会接收 这个信号,接收信号的 槽的 所在对象也不知 道要连接的信号是 哪个对 象发送的。qt 的 “ 信号和槽”机制可以 保证如果 程序员 把一个信号和一个槽连接 起来后, 槽会在正 确的时 间使用信号的参 数而 被调用, 信号 和槽可以 使用任意数量和 任何类型的 参数。 信号:当 某个信号 对其所有者的内 部状态发生改变时, 信号就 被一 个对象发送。 只有定 义过这个信号的 类及其派生类能 够发 送这个信号。 当 一个信号被发送时, 与其 相关联的 槽将被立刻执 行, 就 像一个正常的函 数调用一样。“ 信号和 槽” 机制完全独 立于任 何g u i 事件循环,只 有当 所有的槽 返回以 后发送函数才返回。 信号 的 声 明 是 在 头 文 件 中 进 行 的 , qt 的51 卯 a is关 键 字 指 出 信 号 声 明 区 , 随 后即 可声明自 己的 信号。例如, 下面的头文件中 声明了 两个信号。 si gnal s : 8 南京理工大学硕士学位论文 绣花机电控系统花样的代码分析与实现 v o l d my s i gnal ( ) ; v oi d my s i gnal ( i ntx ) ; 在 上面 的 声明 中, 溢 卯 川 5 是qt 的 关 键 字 , 而 非。 c + 十 的 。 接 下 来 的 一 行vo id m y s i gna l ( ) 声明了信号 m y s i gna l ,这个信号没有携带参数;接下来的一行 void m y s ign al( intx) 声 明 了 重 名 信号mysi gn al , 但 是 它 携 带 一 个整 形 参数 , 这 有 点 类似 于 c 一中的函 数重载。 从形 式上讲, 信号的声明与 普通的c 朴函 数是一 样的, 但是信号 却没有函数体定义,信号的返回值类型都是 voi d 。信号由元对象编译器 n l o c自动产 生 , 不 在 .cpp 文 件中 实 现。 槽:当 与 其关联的信号被发送时, 这个操作 就会被调 用。 槽就是普 通的c 什成员 函 数, 可以 被正常 调用, 它唯一的特殊性就是很多 信号 可以 与其相关联。 槽可以 有参 数, 但槽的 参数不能 有缺省值。 槽是普通的成员函 数, 因此与其它的函 数一样, 它们 也有存取权限。 槽的 存取权限决定了 谁能 够与其相关联。 同普 通的c + + 成员函 数一样, 槽函数也分为 三种类型,即pub licsl ots、 priv ate s l o 招和p ro t ec t e d s le tso 1 、 pu bli c slots : 在 这 个区 内 声明 的 槽 意 味 着 任 何 对 象 都 可 将 信 号 与 之 相 连。 这 对 于组件编 程非常有用, 程 序员可以 创建彼此互不了 解的 对象, 将它们的 信号与槽进行 连接以便信息能够正确的传递。 2 、 p ro t e c t ed sl ots: 在这个区内 声明 的槽意味着当前 类及其 子类可以 将信号与之 相连接。 这适用于那些槽,它们是 类实 现的一部 分,但是其界面 接口 却面向外部。 3 、 priv 也 sl ots: 在这个区内声明 的槽意味着只有 类自 己 可以 将信号与 之相连接。 这适用于联系非常紧密的类。 槽的 声明也是在头文件中进 行。 例如,下 面声明了 两个槽。 p u b li c s l ots : v oi d mys l o t( ) ; v o i d m y s 1 ot(i ntx ) ; 信号与 槽的 关联: 通过调用q o bj ect 对象的colm ect 函数来 将某个对象的信号与 槽函数相关联,这样当发送信号时,槽函数将被调用。该函数的定义如下: b oo1 q 0 bj ect: c onn ect ( con st你 bj ect * send er, c o n s t c h ar* si gn城 con stq() bj ect * r e c e l v er, c o n stc b ar* m e m b er) 【 5 切 ti c 这 个 函 数的 作 用 就 是 将 发 送 者义 n d e r 对 象中 的 信 号si gn al 与 接 收 者砷 v er中 的 m e m b er槽函数 联系 起来.当 指定 信号51 ,al时必 须使用qt的宏s i g n a 以 ) ,当指定 槽函数时 必须 使用宏 s lo to 。如果发送者与接收者属于同 一个对象的话, 那么在 c o n n ect 调用中接收者参数可以省略。 元 对象 编 译 器moc ( m e ta otrject c o n 甲 i ler ) 对c 什文 件 中 的 类 声明 进 行 分 析 并 产 生 用于初始化元对象的 c 什代码, 元对象包含全部信号和槽的名字以及指向这些函数的 电脑绣花机电控系统整体方案 南京理工大学硕士李位论文 指针。 m 。 ( 读c 什源文件, 如果发 现有 q 卫b ject 宏声明的 类, 它就 会生成另 外一 个c + + 源文件, 新生成的文 件中 包含有该类的元 对象代码。 例如, 假设 有一个头 文件 m y r le .h , 在 这 个 文 件 中 包 含 有 信 号 或 槽 的 声 明 , 那 么在 编 译 之 前moc 工 具 就 会 根 据 该文件自 动生成 一个名为m y r l e . moc .h的c 杆源文 件并将其提交给编译 器; 类似地, 对 应 于m y r le .c p p 文 件moc 工 具 将自 动 生 成 一 个 名 为myr le. moc .c p p 文 件 提 交 给编 译器。元 对象代码是 “ 信号 和槽” 机制所必须的。用m o c 产生 的c 升源文件必须与 类实现一 起进行 编译和连接, 或者用 # 访 c l u de语句将其包含到类的 源文件中。 m o c 并 不扩展 衍 n c l u d e 或者 们吃n e 宏定义 , 它只是简 单的 跳过所遇到的 任何预 处理指 令。 “ 信号和 槽” 是比 较灵活的 ,但有些问 题需要注意: 1 、 “ 信号和 槽” 机制是 非常 有效的, 但是它不 像 “ 真 正的” 回调那样 快。 信号和 槽稍微有些 慢, 这是因 为它们 所提供的灵活性,在实际应用中 这些 不利可以 被忽略。 通常, 发 送一个和槽相连的 信号, 大约只比 直接调 用那些非虚函 数调用的接收器慢十 倍。 这是定位连 接对象 所需的开 销, 可以安 全地重复所有的 连接( 例如在发送期间检 查并 发现接收器是否被 破坏) 并且 可以按一般的 方式安 排任何参数。当 十个非虚函数 调用听起来很多时,举个例子来说,时间开销只不过比任何一个 “ n e w ”或者 “ d e l e t e ”操作要少些。当你执行一个字符串、矢量或者列表操作时, 需要 “ n ew ”或 者 “ d e l e t e ” , 信号和 槽仅 仅对一个完整函数调用的时间开销中的一个非常小的部分 负责。 无论 何时 在一个槽中使 用一个系统调用和间 接的调用超过 十个函 数的 时间是相 同的。 信号和槽机制的简单性和灵活性对于时间的开销来说是非常值得的, 用户甚至 察 觉不出 来,当 然对实时 性要 求较高的 系统就会对系统性能有较大 影响。 2 、 “ 信号和 槽” 机制与 普通函数的调用一 样, 如果 使用不当的 话, 在程序执行时 也 有可能产生死循环。 因 此, 在 定义槽函 数时 一定要注意避免间接形 成无限 循环, 即 在槽中再次发送所接收到的同 样信号。 3 、 如果一个信号与多 个槽相联系的话,那 么当 这个 信号 被发 送时,与之相关的 槽被激活的顺序将是随机的。 4 、 构 造 函 数不 能 用 在51 即 ais和s lo ts 声 明 区 域 内 . 宏 定 义 不 能 用 在51 即 al和slot 的参数中, 函数指针不能 作为 信号或 槽的参 数, 信号和槽不能有缺省参数值。 2. 1 3程序的 工作步蕊 本文 所采用的开发环境 是份 曲a tg .0自 带的q i 3 . 1 , 为了 减少开发 过程中 相关软件 的安装, 在安 装操作系统时 采用完全安装的 方式. 巧 s u alc 十 + 是在 v 石 n d o w s下建 立 32位应用 程序的 强大、复 杂的 工具, 是诵croso ft至今最 全面 和最完善的程序开发产 品, 它提供了 一组各种各 样的为 适应几乎 每一种编程风格而设计的 工具, 在编程能力 和方便性方面达到了空前的 水平。用 m l a 旧 so ft的基本类( m fc) 与 代码生成工具 l 0 南京理工大学硕士学位论文绣花机电控系统花样的代码分析与实现 a p p 枯刀 江 d 为 窗 口 编 写c 什程 序 , 是 用v c + 十 编 程 的 最 高 级 和 最 有 效 部 分, m fc 已 经 成为许多c 杆编译器进行win d o w s 软件开发的 工业 标准. qt 在许多 方面 和m fc 类 似,它们 在编程步骤、 类的组 成及其内部函 数的 分布都有相通之处。 qt程 序 一 般 只 有 应 用 类 、 视图 类 和 .cpp , 本 文 软 件 结 构 都 是 如 此 。 c 料类 在 文 件组织 上一般 分为两部分: 头文件( .h ) 和实现文件(. c p p ) , 一般来说,类、结构体 等的定义 放在头文件中, 通过i o c 】 u de 宏插入到实现文件中; 类的 各种函数的实现 代 码 都 放在 一c p p 文 件 中 , qt 也 遵 循 这一 组 织 方 式 。 inam .cpp 大 多 数 情 况 下 是 利 用qt d esigner直接生成。 下面是一个只 有对话框 类f b n n l 的简 单应用程序, 它的 .c pp 由系统 自 动生成的,具体如下。 # m clu d e # j d c l u d e” 允而 1 . h ” int ( intargc , c h ar* * 田 茗 v ) q a p p li ca d ona(aj 唱 c , 印 名 v ) ; 凡 n n l w; w.sho w o ; a c o n n e c t ( a 卫 , s i g n a 以last v 八 n dow c fos edo) , 如 , s l o t ( q u i t ( ) ) ) ; r e tu ma execo ; l 代码说明: 街 n c l u de 这 一 行 包 含了q a p p li c 而 on类的 定 义. 在 每 个 使 用qt的 应 用 程 序 中 都 必 须 使 用 一 个q a p p lcati on对 象 。 q a p p lcation管 理 了 应 用 程 序的 广 泛 资 源 , 例 如 默 认 的 字体 和 光标等。 q a p p li c a ti on类管理图形 用户界面应用程序的控制流和主 要设置, 它包含主 事件 循环, 在其中 来自 窗口 系统 和其它资源的 所有事件被调度和处 理, 同时它还处理 应用 程序的初始 化和结 束。 对于任何一 个使 用 qt 的图形 用户界面应用 程序,都正 好存在 一个 q a p p l i ca t i on 对象, 而不论这 个应用程序在同一时间内是 否有多个窗口。 因为 q a p 如c a 石 o n 对象做了如此多的 初始化, 因 此它必 须在所有与用户 界面相关的 其它类 被创建之前被创建。 i ntlnal n ( in t argc , char* * 越 g y ) n ” n o 函数是 程序的 入口 。 几乎在使用qt 的所有 情况 下, m 画 n 峨 ) 只需要在把控制 权转交给qt库之前执行一 些初始化, 然后qt库通过事 件向 程序告知用户的行为司唱 c 是命令行 变量的 数量, 田 召 v 是命令行变量的数组。这是 一个c ic杆特征,不是qt特 电脑绣花机电控系统整休方案南京理工大学硕士学位论文 有的, 无论如何qt 需 要处理这些变量。 q a p p li ca ti on城别 名 c , 出 唱 v ) ; a 是 这 个程 序 的q a p p lcation, 任 何 窗口 部 件 被 使 用 之 前 创 建q a p p l c a d on对 象 是 必 须的 。 它在 这 里 被 创 建 并 且 处 理 这 些 命 令 行 变 量( 例 如 , 某 窗 口 下 的di s p la y ) . 所 有 被盯 识 别 的 命 令 行 参 数 都 会 从肚 g y 中 被 移 除 , 并 且留 g c 也 因 此 而 减 少 。 r e tu m色 execo ; 这里 0 把控制权移交 给qt, 并且当 应用程序退出的时 候ex ee o 就会返回。 在 e x ec o 中, qt接受并处理 用户和系统的事件并且把它们 传递给适当的 窗口 部 件。 写好 应用 程序还需 要对程序进行编译之后才能 运行。 编译一 个c 什应用程序, 需 要创建一 个m ak e fi l e 。 创建 一个qt的m 吐 e fi l e 的 最容易的 方法是使用qt 提供的 联编 工 具q m ak e , 也 可以 自 己 写m ak e fi le , 那 样 生 成 的 可 执 行 文 件 更 有 效 率 . 如 果 已 经 保 存、 .印 p 到 它自 己 的目 录了 , 在 终 端 上 运 行 # q m ak e 工 程 名 .pro, 该 命 令 运 行 后 就 会生成功 a k efile 。 然后在终端 运行 箱 m 业e ,生成 可执行文件。 最后在终端 运行# j 文 件 名,即运行程序。 下面 仍以上 例来说明qt应用程序运行的主要步骤: 1 、 调 用 .cpp 进 入 程 序的 入口 函 数inam o , 在 把 控 制 权 转 交 给qt库 之 前 执 行一 些初 始化, 因此创建q a p p l ca on对象a ; 2 、 创建对 话框类确n n l 的对象w并显 示调用凡n n l 的 构造函数, 创建并显示 对 话框, 因为 在创建了一个 组件后, 它总是不可见的, 然 后用户可以 对对话框进 行相关 操作: 3 、 田 越 n ( ) 把控制权移交 给 qt 进入主事 件循环体, 等待直到调 用 雨to或 对话框 被破坏, 返回exec o 指定的 值. 当 用户对 应用程序操作完成, 关闭了 所有窗口 时, ex eco 自动返回。 z j电脑绣花机电 控系统的整体设计方 案 电脑 刺绣 机应用在刺绣中 不仅可以 大幅度提高生 产效率 和生产质量, 而且 可以 提 高产品附加值, 给生 产企 业带来更大的利润。 目 前电脑 刺绣机无论是国内 市场还是国 际市场, 需求量 都很大, 给电 脑刺绣机的 生产企业带来巨大的 发展空间。 目 前我国生 产的电脑刺绣机主要集中在中、 低端产品, 如何提高电脑绣花机的质量,开发性能优 良的高 档产品摆 在生产企业和 相关 科研院 所的 面前。 国产电脑 绣花机的许多控制平台 由 于其自 身固有的 局限 性,在 现有的 控制系 统上进行升级改造存在 许多困 难。 目 前嵌入式系 统在国际国内发展 迅速, 基于a r m 9 2 0 t 核的芯片 s3c 2410集成了许 多 功能, 例如外部 存储器控制 器、 l c d 控制器、 n a n dfl as h 控制器、 u s b 主从控制 器等, 具有良 好的 性价比 , 经过调 研选 用此控 制器可以 满足绣花 机系 统控制要求。 在 l 2 南京理工大学硕士学位论文 绣花机电控系统花样的代码分析与实现 采用32位 微处理 器的 基础上使用嵌 入式u n u x 操作 系统进行系统管理, 采取更先 进的 控制器和 控制算法, 结合较高的机 械加工精度则不难实现有效延长平均无故障时间、 提高主轴 转速、降 低机器噪音等绣花 机控制目 标。 随着a r m 微控制器在国内 的 推广 和使用, 再 加上有效的 技术支持使 得电 脑绣花机整机性能得到提高并有效降 低产品 成 本成为可能。 本 项目 采用基于a r m架构的核 心芯片 和u n u x 操作系统开发绣花机控制系 统。 主控开发 板选用深圳科思公司的 标准嵌入式系统c s 2 2 15, 该系统为a r m 92叮, 主频 2 (xjm hz ( 相当于p e n ti um l8 0 m hz) , 外围 包括通用的pc1 04 工业总 线接口 ,所有的 f o口均通过pc 1 04 总线扩展,lc d 尼l接口,psz 键盘和鼠标,u s b口,网口,串 行口等.软件层次结构见下图2 . 1 。 刺 绣 控 制 软 件 一 至 奢了 一 扁 奋飞 一 丘 引煎 1 一 曼 引更 1 七 _ _ _ _ l _ _ _ _ l j t上艺竺 二 l 竺 一少 乞上全 二 1 主控 卫 引 一 聋 酬 赓一 一 蓦 矿1 3 蔽 菇 飞 _ 竺 里上 譬 兰 ; 嵌入式l inux 系 统1 i fc lo4 。 动 p : 1 0 4 驱 动 硬件平台 (c522 1 , 开发板习 !以 1 气二 1 月 月 图2 . 1软件层次结构图 本项目 的电 脑绣花机功能要 求介绍: 1 、 中 英文显示 界面的显示包括图 案和文字, 其 文字部 分可由 用户通过键盘操 作来选择使用中 文或 英文, 而操作键 采用图 案进行标 识。 2 、 存储花样的 针数为1 00万针, 花 样的 最大存储数为 99个。 3 、 花 样的 磁盘输入 通 过磁盘驱动器, 可将多种格式的磁盘花样读入到内 存中。能读取田岛二进制,田岛三 进制, 百灵达印 r 格式 ( 包括二进制、 三进制和2 进制) 的花样。 4 、 花样的磁盘输出 电 脑中存储的花样可以输出存储到磁盘上, 选择田岛二进制格式作为花样输出格式。 5 、 反复绣作功能 当刺绣一个花样时可设置为反复刺绣( 并可伴随循环绣作一起使用) 。 6 、 循环 绣功能 当 设有循环绣功 能时, 花样刺绣一次完毕, 可自 动返回原点, 开始下 一次绣作过程。 7 、贴布绣功能 该功能可将花样换色码或停止码处设为贴布点,当花 样绣作到 贴布点, 机器自 动停车出框( 以另外 起点的 设置为基础) , 贴好布后, 拉杆自 动回 框并继续刺绣。 8 、 刹车调整功能 用 户可根 据各自 绣花机机械的 不同特点, 调 整 刹车过程参数使主轴准确停车到位。 电 脑绣花机控制系 统软件采用模块 化结构 设计, 满 足绣花 机控制 要求, 实 现电 机 良 好的 调速性能和友好的 人机界面 及内 存和磁 盘花样编辑管理, 易于 升级维护, 操作 方便, 运行稳定可 靠. 电 脑绣花机的 运行控制可分为两部分: 对电 机的 运行控 制和绣 电脑绣花机电控系统整体方案南京理工大学硕士学位论文 花机的人 机界面。 绣花机的运行控 制步骤都是 在电 脑绣花机的人 机界面下进行相关操 作, 每步 操作界面都会有相 应的 显示标志, 操作界面方便了操作工 对电 脑绣花机的使 用, 提高了生产效率。 其中人 机界面分为 刺绣控制界 面、 内 存花样界面、 磁盘操作界 面、 参数设置界面、系 统维护界面。对应的电 脑绣花机软件模块图 如图 2 . 2 所示。 蒯 绣( 机翻 控 制)坷绣 人 帆 界面) 利 绣 准 备 1 1 刺 绣确 认 ! 1 正 常 刺绣 日空走1 ! 补 绣1 1 内 存 花样 管理 1 破 盘操 作 日 参 数 设置 日 系 统维 护 图2 2 电脑绣花机电控系统软件模块 z j本章小结 本文的电 脑绣花机电 控系统是 采用 基于“ a r m 9 2 (yt+ u n u x 咬t ” 的嵌入式系统来 进行开发。 本章在项目 对电脑绣花机功能要求的基础上介绍了电脑绣花机电控系统的 软件模块,另外 还介绍了编 程工具qt, 主要介 绍 qt 的 工作机制 和利用 qt d es i g n er 直接生成的.c p p 程序的 基本工 作步 骤。 南京理工大学硕士学位论文 绣花机电控系统花样的代码分析与实现 第三章 花样文件代码分析 本章主要在熟悉绣 花机刺绣过程的 基础 上, 分析理解了不同的刺 绣动作 在多种 格 式的花样文件中的 相应 表示, 主要分析了 d s t 、 d s b 、 d s z格式的 花样文件中不同 代码包含的功能 含义, 并在此基 础上实 现了 花样文件的仿真显示。 3. 1 问 题的引出 花样文件是电 脑绣花机完 成刺绣操作的 基础, 花样 文件首先由 打版师利用刺绣打 版软件设 计完成, 然 后通过磁盘等 传输介 质传送到电 脑绣 花机的内存中。 通常情况下, 不论是什么刺绣打版软件, 它所设计出来的花稿都是以一种电脑绣花机不能直接读出 的 文件格式保存下来的,然后 再转换成电 脑绣花机能 读出的 格式。 例如, d o s 版本 的田岛软件所生成的花样文件格式为气 e s d ,wi ndo w s 版本的田岛软件和威尔克姆软 件所生成的花样文件格式为 气 e m b , windo w s 版本的 天木软件所生成的花样文件格式 为气 ndw等; 这些 格式的 文件电 脑 绣花机都不能 直接使 用,必须 转换 成d s t ( 田岛三 进制格式 ) 、 d s b ( 百灵达二进制 格式) 和d s z 格式的花 样文件, 绣花机 才能读 进内存 进行绣花。花样设计文件实际上是一种特殊的格式的图形文件,它含有图象信息( 例 如,图形大小、色彩、相对位置等信息) 和制版编辑信息 ( 例如, 选用的针迹类型和密 度等信息) , 而绣花机只能读d st 等只包含针位信息的花样文件格式, 这非常符合缝 制设备的 特点, 因为 绣花机的步进电 机x轴和y 轴的 位移 尺寸( 最小 偏移量为o l ln l n ) 以 及停止、换色、 剪线等控制 信息只能用二进制或三 进制来编码。由 此可见, d s b 等格式的花样文件是由e mb等格式的花样文件经过滤除制版信息转换而来的,是以 带有控制信息的 线迹单元作为 基本图 案单位。 花样 文件的 数据中 主要包括了图 形信息 和缝制动作信息,这些信息都 将用于整个绣品中的 每一针的 缝制控制11 611 1 刀 。 在分析和理解每种格式 花样文件包含信息的基 础上, 才能对电 脑绣花机 进行正确 的控制和花样在显示屏上的仿 真显示。 因 此, 分析 并研究 现有国 际主流的绣花机花样 格式, 是研发符合市场需求的电脑绣花机电控系统的基础, 同时还有助于开发花样设 计系统。 由 于各品 牌电 脑绣花机的 发展历史和功能结构的 等诸多因 素, 它们能识别的 花样文件格式不尽相同,目 前国 际上主流的花 样文件格式有d s t 、 d s b 、 d s z等。 目 前市场上的刺绣打版软 件都 能生成d s t 、 d s b和d s z 格式的 花样文件,本文主要 分析这三种花样格 式,并 在此基础 上对花样进行相应的仿真验证,其中基于d s b格 式的花样文 件的分 析结果己 经在实际的电 脑绣花机平台上正确运行。 花样文件代码分析 南京理工大学硕士学位论文 3 2花样文件的分析和比较 经过初步分 析花样文件与磁盘无关, 只与文件的 编码方式有关。 使用u l 七 al 记 i t 一 3 2 软件对三种格式的 花样文件进 行分析, 可以 看到花样文件是 按字节存储的 ,因 此它的读取也按 字节进 行。 花样文 件由 三部 分组成,文件头 + 针位信息部分 + 结尾, 其中文件头为51

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论