当前位置: 首页 > news >正文

网站建设企业站模板数字营销师证书

网站建设企业站模板,数字营销师证书,石家庄做网站公司,怎样在网上建网站做电商生意文章目录 openpnp - Warning - Unknown firmware概述笔记https://github.com/openpnp/openpnp/wiki/Motion-Controller-Firmwares备注END openpnp - Warning - Unknown firmware 概述 接上飞达控制板后, 显示未知固件的警告 开始没看源码之前, 总以为是回答的版本号不合适, … 文章目录 openpnp - Warning - Unknown firmware概述笔记https://github.com/openpnp/openpnp/wiki/Motion-Controller-Firmwares备注END openpnp - Warning - Unknown firmware 概述 接上飞达控制板后, 显示未知固件的警告 开始没看源码之前, 总以为是回答的版本号不合适, 就照着冰沙板子回的版本号来回固件版本. 还是有这个警告. 现在已经在使用自己编译出来的openpnp, 就想去看看这个警告咋来的. 笔记 判断是否有未知固件的函数为 findIssues() D:\my_openpnp\openpnp_dev_2022_0801\src\main\java\org\openpnp\machine\reference\solutions\GcodeDriverSolutions.java public void findIssues(Solutions solutions) { // ... if (gcodeDriver.getFirmwareProperty(FIRMWARE_NAME, ).contains(Smoothieware)) {firmware (gcodeDriver.getFirmwareProperty(X-GRBL_MODE, ).contains(1))? FirmwareType.SmoothiewareGrblSyntax : gcodeDriver.getFirmwareProperty(FIRMWARE_VERSION, ).contains(chmt-)?FirmwareType.SmoothiewareChmt : FirmwareType.Smoothieware;firmwareAxesCount Integer.valueOf(gcodeDriver.getFirmwareProperty(X-AXES, 0));if (firmware FirmwareType.SmoothiewareChmt) {// OK, CHMT STM32 Smoothieware board. Take PAXES 5 if missing (legacy build).firmwarePrimaryAxesCount Integer.valueOf(gcodeDriver.getFirmwareProperty(X-PAXES, 5));}else if (gcodeDriver.getFirmwareProperty(X-SOURCE_CODE_URL, ).contains(best-for-pnp)) {// OK, regular Smoothieboard with pnp firmware.firmwarePrimaryAxesCount Integer.valueOf(gcodeDriver.getFirmwareProperty(X-PAXES, 3));}else {solutions.add(new Solutions.PlainIssue(gcodeDriver, There is a better Smoothieware firmware available. gcodeDriver.getDetectedFirmware(), Please upgrade to the special PnP version. See info link., Severity.Error, https://github.com/openpnp/openpnp/wiki/Motion-Controller-Firmwares#smoothieware));}if (firmwarePrimaryAxesCount ! null firmwarePrimaryAxesCount ! firmwareAxesCount) {solutions.add(new Solutions.PlainIssue(gcodeDriver, Smoothieware firmware should be built with the PAXISfirmwareAxesCount option., Download up-to-date firmware optimized for OpenPnP, or if you build the firmware yourself, please use the make AXISfirmwareAxesCount PAXISfirmwareAxesCount command. See info link., Severity.Warning, https://github.com/openpnp/openpnp/wiki/Motion-Controller-Firmwares#smoothieware));}}else if (gcodeDriver.getFirmwareProperty(FIRMWARE_NAME, ).contains(Duet)) {firmware FirmwareType.Duet;String firmwareVersion gcodeDriver.getFirmwareProperty(FIRMWARE_VERSION, 0.0);Integer major null;Integer minor null;try {Matcher matcher Pattern.compile((?major-?\\d)\\.(?minor-?\\d).*).matcher(firmwareVersion);matcher.matches();major Integer.parseUnsignedInt(matcher.group(major));minor Integer.parseUnsignedInt(matcher.group(minor));}catch (Exception e) {Logger.warn(e);}if (major null || minor null|| major 3 || (major 3 minor 3)) {solutions.add(new Solutions.PlainIssue(gcodeDriver,Duet3D firmware was improved for OpenPnP, please use version 3.3beta or newer. Current version is firmwareVersion,Get the new version through the linked web page.,Severity.Error,https://github.com/openpnp/openpnp/wiki/Motion-Controller-Firmwares#duet));}if (gcodeDriver.getConfiguredAxes() ! null) {try {Matcher matcher Pattern.compile(.*\\s(?axes-?\\d)\\saxes\\svisible.*).matcher(gcodeDriver.getConfiguredAxes());matcher.matches();firmwareAxesCount Integer.parseUnsignedInt(matcher.group(axes));}catch (NumberFormatException e) {// ignore}if (gcodeDriver.getConfiguredAxes().contains((r))) {solutions.add(new Solutions.PlainIssue(gcodeDriver,Axes should be configured as linear in feedrate calculations on the Duet controller. See the linked web page.,Use the M584 S0 option in your config.g file.,Severity.Error,https://duet3d.dozuki.com/Wiki/Gcode#Section_M584_Set_drive_mapping));}else {firmwarePrimaryAxesCount firmwareAxesCount;}}}else if (gcodeDriver.getFirmwareProperty(FIRMWARE_NAME, ).contains(Marlin)) {firmware FirmwareType.Marlin;firmwareAxesCount Integer.valueOf(gcodeDriver.getFirmwareProperty(AXIS_COUNT, 0));if (firmwareAxesCount 3) { firmwarePrimaryAxesCount firmwareAxesCount;}else {solutions.add(new Solutions.PlainIssue(gcodeDriver, Marlin firmware is not reporting support for rotation axes (A B C). gcodeDriver.getDetectedFirmware(), Please upgrade the firmware and/or axis configuration. See the info link., Severity.Error, https://github.com/openpnp/openpnp/wiki/Motion-Controller-Firmwares#marlin-20));}}else if (gcodeDriver.getFirmwareProperty(FIRMWARE_NAME, ).contains(TinyG)) {// Having a response already means we have a new firmware.firmware FirmwareType.TinyG;}else if (gcodeDriver.getFirmwareProperty(FIRMWARE_NAME, ).contains(Grbl)) {firmware FirmwareType.Grbl;}else if (gcodeDriver.getFirmwareProperty(FIRMWARE_NAME, ).contains(GcodeServer)) {firmware FirmwareType.Generic;}else { solutions.add(new Solutions.PlainIssue(gcodeDriver, Unknown firmware. gcodeDriver.getDetectedFirmware(), Check out firmwares known to be well supported. See info link., Severity.Warning, https://github.com/openpnp/openpnp/wiki/Motion-Controller-Firmwares));}// ... }看了判断是否为未知固件的实现, 明白了. 原来openpnp只支持几种御用固件, 其他的固件都是未知固件. 在代码中, 看到openpnp支持的御用固件如下: Smoothieware Duet Marlin TinyG Grbl GcodeServer以前和一个同学讨论, 他问一个主板是否支持openpnp, 我当时现去查, 看到有个openpnp硬件项目拟采用那个主板, 才知道那个主板可以用做openpnp的主板. 现在看了代码就很清楚了, openpnp就支持有限的几种御用主板. 如果不是openpnp主板, 而是辅助用的飞达控制板, 出现这种未知固件的警告是不用担心的, 将这个警告禁止掉就行. 飞达控制板不涉及到openpnp硬件的运动位置, 只在固定位置送料, 这种只要送料控制好使就行. 下面是openpnp未知主板固件的提示信息 else { solutions.add(new Solutions.PlainIssue(gcodeDriver, Unknown firmware. gcodeDriver.getDetectedFirmware(), Check out firmwares known to be well supported. See info link., Severity.Warning, https://github.com/openpnp/openpnp/wiki/Motion-Controller-Firmwares));}看到给出了官方openpnp支持的主板固件的wiki连接. 看了一下, 知道了如果用于openpnp, 主板需要支持哪些特性(GCode) https://github.com/openpnp/openpnp/wiki/Motion-Controller-Firmwares 主板固件支持异步GCode驱动和高级运动控制. 不过异步GCode驱动停危险的, 同步GCode驱动就够用了. 异步GCode驱动的官方wiki GcodeAsyncDriver 高级运动控制的官方wiki Advanced Motion Control openpnp要求的主板关键特性: 支持M115命令, 用来向openpnp上报固件版本, 好让openpnp能判断固件.必须支持除了X, Y, Z之外的附加轴(A, B, C)控制, 而且可以使多个轴的混合控制好使.支持M114命令, 用来上报所有轴的位置.支持G92命令, 用来让每个轴位置归零.支持M400命令, 用来等待移动完成. 在移动完成之前, 通讯必须是阻塞的. (在M400之后, 可能会发送其他命令, 但是移动完成之前, 必须阻塞住, 不能执行后续的指令)必须支持M204(加速度控制), M201.3(禁止加速)最好内置GcodeServer控制器模拟器(可选), 用来和openpnp联调, 用来确定openpnp发送的指令能产生正确的动作和效果. 官方御用的主板和固件如下: Duet3D https://docs.duet3d.com/en/Duet3D_hardware/Hardware_overview RepRapFirmware 只是固件, 板子支持多种, 没细看. Smoothieware 官方特意说, 不支持中国同学做的山寨版冰沙, 不过都是吓唬人, 用起来挺好的. 冰沙有第三方出的新固件 makr.zone: “Smoothieware: New Firmware for PnP” Marlin 2.0 TinyG 备注 对换冰沙主板之外的板子, 不感兴趣. 因为都是钱和时间啊, 等以后时机到了, 再折腾其他主板. END
http://www.dnsts.com.cn/news/63262.html

相关文章:

  • 二手交易网站开发方式qq官网
  • 外贸自建站类型90平方装修全包价格
  • 工信部网站域名备案查询网址短链接生成器
  • 有哪些网站制作公司抖音的电子商务网站建设
  • 制作网站的方法网络广告营销的特点
  • seo案例网站企业网站为什么打不开
  • 网站收录很慢重庆网页制作设计营销
  • 南康网站建设公司宿州北京网站建设
  • 网站开发用户需求说明书太平洋手机网报价大全
  • 游戏是怎么做的视频网站福建住房和建设网站密码忘记
  • 网站设计需求分析seo如何进行优化
  • 做自媒体怎么在其它网站搬运内容瑞安市公用建设局网站
  • 天河网站开发广告图片怎么制作
  • flash网站的制作网站设计论文总结
  • 东坡区建设局网站网站导航固定代码
  • 东莞市网站建设公司哪家好重装电脑后下载wordpress
  • 网站开发用什么编辑语言好哈尔滨网站制作哪里专业
  • 个人宽带弄网站可以吗googleplay官方下载
  • 除了做视频网站还能做什么网站wordpress添加百度搜索
  • 北京网站建设itcask电商网站怎样做优化才最合理
  • 做招聘网站建设微信网站需要服务器
  • 外贸网站用什么语言办公门户网站模板
  • 淘宝类网站开发wordpress 每个分类分页
  • 网站布局分类小微企业名录查询官网
  • 门店做网站有没有必要做公众号排版的网站
  • 邢台哪里可以做网站腾讯游戏推广代理加盟
  • 网站图片一般的像素怎样做校园网站推广
  • 受欢迎的锦州网站建设欧美设计网站
  • 网站开发系统流程图东莞住房和建设局网站
  • 24小时自动发货网站建设免费申请移动手机卡