接上篇
4.3 体系软件规划
4.3.1 魔方复原算法流程
本算法是一个能够给出将魔方任何或许的混乱状况还 原回六面同色状况的算法。现在常用的CFOP法是一种4阶段 算法,总共分有4个复原阶段,均匀步数在50-70步。而恣意 状况的魔方的复原办法现已被证明能够在20步之内,可见这 种办法有很大的冗余,还有提高空间。本算法能在短时刻里 提供出一组均匀步数在 25步左右的解决方案。
魔方有6个面,每个面存在3种操作(正对该面,顺时针 旋转,逆时针旋转,180度旋转),总共18种操作。首要介绍 一下各个旋转操作的简称:
前面顺时针旋转为【 F 】逆时针旋转为【 F’ 】,180 度旋转为【F2】。后边相应为【B】【B’】【B2】。接下 来介绍算法中的编码。算法有两个阶段,每个阶段有不同的 编码办法,如下表,第一阶段:
通过摄像头或许手动输入收集魔方状况之后,咱们需 要用一种办法保存初始魔方状况。魔方有8个角块,12个棱 块,魔方的摆放为:U蓝色,F赤色,R黄色,L白色,B橙 色,D绿色。首要对它们分类进行编码,角块:
然后,关于每一个角块,还需要一个参数来确认:顺 时针改变次数。如图14(166页),蓝橙黄5号角块处在正确的方位, 可是处在不同的改变状况,第一个是顺时针改变0次,第二 个是顺时针改变1次,第三个是顺时针改变2次(在后文中也 称作逆时针改变1次)。
而关于棱块,只要两种或许,翻转或许正常。如蓝红11号棱块,第一个是 正 常 0 , 第 二 个 是 翻 转 1 。 扭 转 、 翻 转 是 一个部分相对
于全体 的操作。在图14中, 蓝色是参阅色,改变 是角块与棱块中蓝色 的方位,相关于顶面 中心蓝色来说的。不 同的参阅会导致不同 的成果,假如以黄色 为参阅色,那么角块 中 , 分 别 扭 转 1 , 2,0。
如图15,被喷涂 的色彩为参阅色,当
图16 魔方复原算法流程图
图17 操控端算法流程图
处在顶面和底面时,蓝色和绿色是平等参阅色。当处在UD 夹层中的时分,优先参阅蓝色和绿色,当棱块是红黄等非 蓝、绿色的时分,则参阅赤色和橙色相关于中心赤色和橙色 的翻转状况。这样,界说一个魔方的数组int MF[3][3][3][2][b][c];([n行][n列][n层][编号或改变数][第b步][第c次循环])就能够保 存下初始魔方的状况。
图18 QSYS体系规划
关于一个未打乱的魔方,假如你运用除 R,R’,L,L’,F,F’,B 和 B’以外的转法来滚动它,你能生成的 状况仅是魔方一切或许状况群中的一个子群。这个子群表明 为 G1群。而本二阶段搜索算法的思维,便是依据这个G1群,在 第一阶段中,咱们用一切的18种或许的操
作去效果初始状 态,当一切块的翻转、改变为0,且中心棱块都在中心的时 候,则抵达G1群状况,第一阶段完结。第二阶段,咱们用 群的10种或许操作去效果此刻状况,直到一切块的方位都正 确。则魔方复原。详细流程如下图16所示。
4.3.2 操控端算法流程
详细流程图如下图17所示。
HPS端操控开端色彩辨认,将操控信号发送给舵机滚动模块,舵机滚动模块操控机械手臂滚动魔方到达指定方位, 滚动完毕后,舵机模块向色彩辨认模块发送滚动完毕信号, 色彩辨认模块开端辨认9个色块的色彩,辨认完毕后,将识 别到的色彩以及完毕信号发送到HPS操控端。
如此循环6次,获取到54个色块的色彩,HPS操控端对
54个色彩进行整合,是否契合各个色彩的面数,假如契合,
则进行求解魔方,假如不契合,则进行从头辨认。
5 规划办法
5.1 Qsys体系规划
5.2 CCD摄像头运用原理
CCD摄像头是指运用CCD传感器的摄像头。CCD图画 传感器可直接将光学信号转化为模仿电流信号,电流信号经 过放大和模数转化,完结图画的获取、存储、传输、处理和复 现。其明显特点是:1.体积小、重量轻;2.功耗小,作业电 压低,抗冲击与轰动,功用安稳,寿命长;3.灵敏度高,噪声低,动态规模大;4.呼应速度快,有自扫描功用,图画畸 变小,无残像;5.运用超大规模%&&&&&%工艺技术出产,像 素集成度高,尺度准确,商品化出产成本低。因而,许多采 用光学办法丈量外径的仪器,把CCD器材作为光电接纳器。 CCD 从功用上可分为线阵CCD 和面阵CCD 两大类。 线阵CCD通常将CCD内部电极分红数组,每组称为一相, 并施加相同的时钟脉冲。所需相数由CCD芯片内部结构决 定 , 结 构 相 异 的 C C D 可 满 足 不 同 场 合 的 使 用 要 求 。 线 阵 CCD有单沟道和双沟道之分,其光敏区是MOS%&&&&&%或光敏 二极管结构,出产工艺相对较简略。它由光敏区阵列与移位 寄存器扫描电路组成,特点是处理信息速度快,外围电路简 单,易完结实时操控但获取信息量小,不能处理杂乱的图画(线阵CCD如右图所示)。面阵CCD的结构要杂乱得多,它由许多光敏区排列成一个方阵,并以必定的方法衔接成一个 器材,获取信息量大,能处理杂乱的图画。咱们所运用的 CCD摄像头什物如图18。
5.3 舵机操控原理
舵 机 接 出 来 三 根 线 , 红 色 的 是 电 源 线 , 棕 色 的 是 地 线,橘黄色的是信号线。舵机的作业电压在4.8V到6V之间, 供电电压不同,会影响舵机滚动的速率以及舵机的输出力 矩。咱们的板子上面的供电是5V电压。舵机里边是一个步进电机、一个基准电路以 及其它部 件,信号线输入不同的信号时会和基准电路进行比较,从 而决议舵机的滚动方向。舵机旋转的视点由脉冲的高电平时 间决议,在一个周
期为20ms的脉冲里边高电平继续的时刻 决议了舵机滚动的视点,180度舵机对应联系如下:
0.5ms–0 度,1ms–45度,1.5ms–90度,2ms–135度,2.5ms–180度。我 们所运用的舵机什物
如图19(170页)所示。
5.4 色彩辨认原理
5.4.1 BP神经网络
神经网络是一种运算模型,由很多的节点(或称“神经 元”或“单元”)相互衔接构成。每个节点代表一种特定的 输出函数,称为激励函数(activation function)。每两个节点之 间的衔接都代表关于通过该衔接信号的加权值,称为权重 (weight),这相当于人工神经网络的回忆。网络的输出则依 网络的衔接办法、权重值和激励函数的不同而不同。网络本 身通常是自然界的某种算法或许函数迫临,也能够是一种逻 辑战略的表达。如图20(170页),是一个BP神经网络图。
其间包括3个层次:
输入层:输入层各神经元担任接纳外接的输入信息,并传递给中心层各神经元 躲藏层:中心是内部信息处理层,担任信息改换,依据信息改变才能的需求,中心层能够规划为单隐层或许多隐 层结构;最终一个隐层传递到输出层各神经元的信息,经进 一步处理后,完结一次正向传达处理进程;输出层:望文生义,输出层向外界输出信息的处理成果;当上层的神经元输出通过衔接加权求和后,传递到下
一个神经元时,通过激励函数处理后,才作为本层输出,激 励函数一般有以下几种方法:
线性函数
阈值函数
Rectified linear函数
Sigmoid函数
本次色彩辨认选用的激励函数为Retified linear函数。采 用54*3个神经元作为输入层,输入54个待分辨色块的R ,G,B 值,两个躲藏层,神经元数分别为300与100,输出层为54个 神经元,输出每个色块的色彩分类成果。0表明白色,100表 示赤色,200表明蓝色,300表明绿色,400表明黄色,500表 示橙色,输出取在规范值邻近,取最靠近的数为输出。(未 完待续)