MALT 入门
本主题定义如何将固件上传到 MALT,以及如何使用 SensorExplorer 校准传感器。 我们建议控制微控制器的电脑也是受测系统或设备(SUT/DUT)。
定位马尔特
马尔特前部 (环境面) | 马尔特背面 (面向屏幕) |
---|---|
设置硬件
使用 USB 2.0 电缆类型 A/B 将 Arduino Mega 连接到设备。
使用彩虹丝带电缆将马尔特控制器板连接到 Arduino Mega 的后引脚。
使用 CAT5(x) 或 CAT6(x) 电缆将MALTE控制器板连接到MALTE传感器板。 (例如 CAT5、CAT5e、CAT6 等)
注意
用于将MALTE控制器板连接到MALTE传感器板的以太网电缆必须具有所有 8 根电线,这些电线不得交叉。
按 Arduino Mega 上的重置按钮。
获取必要的文件
在计算机的 C 驱动器上创建名为 MALT 的文件夹。 filepath 应为 C:\MAL。 我们将在此处放置所有必要的文件和克隆的存储库。
将 busiotools 存储库 克隆到 MALT 文件夹。 文件路径应为 C:\MAL\busiotools。
将 SerialCommand 和 SoftI2CMaster 存储库克隆到 MALT 文件夹。 文件路径应 分别为 C:\MAL\Arduino-SerialCommand 和 C:\MAL\SoftI2CMaster 。
更新 MALT 固件
MALT 由 Arduino 运行,它要求固件设置和与马尔特板上的传感器交互。
获取并设置 Arduino 命令行接口。
下载最新版本的 arduino-cli 并将其保存到计算机。
将 arduino-cli 添加到 PATH 变量(如果尚未添加)。
注意
请确保在将 arduino-cli 添加到 PATH 变量后关闭命令提示符并打开新的命令提示符!
在提升的命令提示符下运行以下命令:
arduino-cli config init arduino-cli core update-index arduino-cli core install arduino:avr
通过从提升的命令提示符运行以下命令,从 Arduino 库管理器添加必要的库:
arduino-cli lib install MatrixMath arduino-cli lib install AsyncDelay
通过从提升的命令提示符运行以下命令,确定分配给 Arduino 的 COM 端口:
arduino-cli board list
通过从提升的命令提示符运行以下命令并将 COMX 中的 X 替换为上一步骤中标识的 COM 端口号,将固件上传到 Arduino:
arduino-cli compile --fqbn arduino:avr:mega --port COMX --upload --library C:\MALT\Arduino-SerialCommand --library C:\MALT\SoftI2CMaster C:\MALT\busiotools\sensors\tools\MALT\Code\malt
预期输出如下:
校准MALTE颜色传感器
马尔特的颜色传感器不会为真实世界颜色进行出厂校准。 下面是校准过程,以确保获得准确的读数。 必须对环境颜色传感器和屏幕颜色传感器执行马尔特校准。 此过程只需在每个传感器板上完成一次,并且只需在PCC上的内存芯片即可保存设置。 若要刷新设置,请按 arduino 上的重置按钮。
将MALTE插入 SUT 上的 USB 端口。
打开 SensorExplorer 并导航到左侧的“马尔特”选项卡(#3)。 在“设备选择”窗格中选择正确的 Vid/Pid“,然后选择”连接到设备”。
选择 窗口顶部的“校准 ”选项卡。
已知颜色值是任何校准过程的关键,来自已经校准并具有正确值的传感器。 通过使用 i1Display Pro 等手动校准的外部校准设备来收集这些值,以捕获 XYZ 值和三个表示红色、绿色和蓝色的彩色光源。 可以使用下面的彩色框校准手持设备。 任何具有可验证正确值的设备(如现有的校准电脑)都可用于查找这些数字。 这些 XYZ 值应大约在 0-100 范围内,以最有效。 针对红色显示器、蓝色显示器和绿色显示器执行此操作。
使用以下模式将观察到的值放入 已知值 3x3 矩阵中:
┌ ┐ │Known RED X value | Known BLUE X value | Known GREEN X value│ │Known RED Y value | Known BLUE Y value | Known GREEN Y value│ |Known RED Z value | Known BLUE Z value | Known GREEN Z value│ └ ┘
原始或未自变量值是在应用任何数学或校准之前,当前未自变量的MALTE颜色传感器中得出的值。 通过将 MALT 指向从中收集已知值的相同显示颜色来收集这些值来收集这些值。 此步骤非常重要,使公式可靠。 确定是校准面向屏幕的传感器还是环境面传感器。 此决定将确定收集数据时要按下的 UI 按钮。
将所需传感器指向下面的颜色块,并为要校准的传感器确定的每个颜色选择“读取屏幕”或“读取环境”。
这将填充原始未自变量值 3x3 矩阵,应如下图所示。
填充已知值和原始未自变量值马蒂斯后,选择 屏幕底部的“计算 ”按钮。 校准值 3x3 矩阵应填充类似于以下屏幕截图。
生成这些数字后,选择“校准顶部”或“校准底部”,由要校准的传感器确定。
测试 MALT 校准
正确校准屏幕颜色传感器和环境颜色传感器后,通过选择 窗口顶部的“开始 ”,返回到“马尔特”部分的主选项卡。
在“开始”选项卡上,应该能够选择传感器数据标题下的任何按钮,并返回非负数。
故障排除
校准时,原始值是相同的,无论是按“读取屏幕红色”、“读取屏幕绿色”还是“读取屏幕蓝”(与“读取环境”类似)。
确保马尔特传感器板通过以太网电缆连接。
接下来,检查所使用的电缆是否可以支持通过以太网(POE)。 所有 CAT5 或更高版本的电缆都支持此功能。
最后,如果确定电缆支持 POE,请尝试按 Arduino Mega 上的重置按钮。
校准时,校准矩阵在按 “计算 ”按钮后,在一个正方形中包含“NaN”。
确保原始值为 RED、GREEN 和 BLUE 提供不同的数字。
确保在按 红色时将 MALT 传感器按住红色,按绿色时按 绿色,然后按 BLUE 时为 蓝色。
如果原始值仍然不同,请检查上面的 #1。
校准完成后(即已选择校准顶部或校准底部),传感器将在主屏幕上读取不合理的值。
确保确实选择了 “校准顶部 ”或 “校准底部 ”按钮。
如果根据上述说明,请确保正确校准了顶部和底部传感器,请发送电子邮件 sensortools@microsoft.com。
如果此故障排除部分无法解决问题,请发送电子邮件 sensortools@microsoft.com。