问题标签 [lejos-nxj]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - Lejos 在初始化矩阵时给出错误
我们正在尝试构建一个机器人,为了让机器人了解他现在在哪里,我们将使用矩阵。
所以我在呼唤矩阵。java 没有任何主要内容。然后尝试使用 initMatrix,它只是给了我一个错误。
有任何想法吗?
java - EV3 不能走直线 LeJOS Java
我尝试让机器人沿着直线前进约 2 米,使用方法:
但这样做时,机器人似乎偏向右侧,并略微向右侧移动。有没有可能调整这个?
java - 如何创建自己的事件。当传感器的值发生变化时,如何调用方法?
我目前正在使用 LeJOS Ev3 库并编写了以下侦听器:
如您所见,有一个名为 notify 的方法应该调用不同的方法,具体取决于传感器正在测量的内容。我希望能够仅在传感器测量的值发生变化时调用方法通知,而不使用不断检查值是否已更改的 while 循环。但我想不出或找到实现这一目标的方法。
我唯一想到的就是启动一个运行此代码的线程:
但是,我什至不知道是否可以等待事件发生(无需不断检查值)。
编辑 - 由于已多次向我建议,我会提到我已经在我的 LightSensor 上添加了一个名为 addLightListener(LightListener listener) 的方法。这并不能解决我避免轮询的问题。
java - NXTComm 驱动程序错误
我们正在尝试设置 NXT 砖以使用 LEJOS,以便我们可以使用 Java 对其进行编程以用于学校项目,但是当我们尝试安装固件时,我们会收到“无法加载 NXTComm 驱动程序”错误。还需要做什么才能正确下载?
这是进度日志:
linux - 使用 eclipse 插件下载 Lejos 固件 (Linux Mint 17.3)
所以我刚刚从 Windows 10 切换到 d 到 Linux Mint rosa。我试图弄清楚如何通过 eclipse 下载固件。每当我点击插件,然后我得到固件;
“启动 nxjflashg 失败 org.lejos.nxt.ldt.util.LeJOSNXJException:未设置 NXJ_HOME。请在插件的首选项中指定它,请参阅 Eclipse 错误日志以获取详细的堆栈跟踪。”
我知道当我使用 Windows 10 时,我必须更改环境变量并下载 NXJ 驱动程序,我不确定如何使用 Linux 执行此操作
java - Lejos NXT:画线并保存图像
我设法制作了一个 LineFollower 程序;添加了“记忆”机器人刚刚走过的路径的功能。下一步是绘制该路径并将图像文件保存在砖中,然后使用 NxjBrowse 在 PC 中读取它。我想我会尝试使用经典的 java 方法,使用 BufferedImage 并使用 ImageIO 保存,但它没有用,它一直给我 Java 堆空间: 我以前的问题
之后,我做了一些研究,发现有一个名为javax.microedition.lcdui.Image的类,所以我创建了一个 Image 对象并使用 GetGraphics 并尝试在其上绘图;并使用 FileOutputStream 保存它,这是我的代码:
问题是当我连接到我的电脑时,它写入的文件不能被识别为图像;我无法打开创建的文件(检查大小,不是空的)。不知道是保存错了还是我画的方法错了。问题的简短版本:如何用 Lejos 画线并将结果另存为图像文件?谢谢你。
更新:
我使用 ImageOutputStream 而不是 FileOutputStream;现在它给了我“Java堆空间”错误;在它陷入“链接”一段时间之后。
robotics - 如果地面移动机器人被编程为使用声纳传感器避开障碍物,它们是否需要知道其位置信息?
这是一个时不时会想到的问题。我个人认为机器人不需要知道它的位置信息,因为:
1) 如果它们被编程为四处走动,它们可以轻松避开障碍物,而无需知道障碍物在哪里,只要声纳传感器能够准确测量机器人正前方物体的距离即可。
2) 机器人可以利用 SLAM 技术并建立其环境地图,它们不需要任何此类位置信息。
...对于这样的问题,什么是更合理的解释或答案?很久以前,我对机器人进行了编程,让它移动到多个位置,并为其提供了避障行为,它几乎总是在不知道自己的位置信息的情况下到达这些位置并返回。我使用了声纳传感器(用于避障)并使用了颜色传感器(让它寻找放置在地面上的红色,然后执行下一步动作)。
java - 这么简单的关于EV3UltrasonicSensor的lejos程序也会出现错误吗?
这是一个简单的 lejos 程序EV3UltrasonicSensor
。第 13 行代码是:
第31行代码是:
抛出的异常是:
这么简单的程序也会出现错误吗?这让我很困惑。
你能给我一些帮助或一些建议吗?任何帮助表示赞赏,如果您需要了解更多信息,请随时提出。
java - Lejos坐标系的实践与理论矛盾
我知道leJOS的坐标系是一个笛卡尔坐标系。正X轴直接指向汽车的前方。正 Y 轴指向 X 轴的左侧。但是我编写了一个程序并移动了汽车,然后我遇到了一个问题:
我让车直走navigator.goTo(20, 0);
。但是navigator.goTo( 0, 20);
,它会向右而不是向左!我得到了姿势navigator.getPoseProvider().getPose()
。X 的值为,但0
Y 的值为!20
-20
为什么?
java - 如何从 gradle 项目中删除 java 标准库?
如何让 Gradle 不包含 Java 标准库作为 IntelliJ IDEA 项目的依赖项?
我正在使用 IntelliJ,每次我Refresh all Gradle projects
:
IntelliJ 将 Java 标准库作为外部依赖项添加回项目中:
所以我必须每次手动删除它:
我尝试过但没有成功的事情
摆弄
sourceCompatibility
andtargetCompatability
属性...将
idea
插件应用到 Gradle 并设置idea.project.jdkName
为null
.
背景
我正在使用Lejos,所以我可以用 Java 编写程序
Lejos 的乐高积木“标准库”只是实际 Java 标准库的一小部分......(因为内存限制?)
Lejos 提供了一个 JAR 文件,其中包含其标准库的所有类以帮助编程。我已将此 JAR 添加为项目的依赖项。
Gradle 还(隐含地?)将实际的 java 标准库作为依赖项添加到项目中,这掩盖了 Lejos 的标准库类,因为它们使用相同的名称......
PS至少这是我认为正在发生的事情......如果我错了请纠正我