找回密码
 马上注册

QQ登录

只需一步,快速开始

查看: 5040|回复: 4

来自一个初二学生的ev3小车记录路线编程问题

[复制链接]
发表于 2017-11-24 10:14:09 | 显示全部楼层 |阅读模式
悬赏1乐币已解决
近日想做一个小车,但在编程时出了很大的问题,具体内容如下:目标:
  手动推着小车做过一段路线,经过若干个拐弯,途中记录转动度数。最后把小车放回开始的地方,按下按钮,小车自动按照之前走的路线再走

一遍。


编程思路:
  手动推着小车走过想走的路线,记录左右两个马达每个小段(如:执行前进1m,左转90度中,前进1m为一个小段,左转为另一个小段)转动的

度数,分别添加到数组末尾。每次记录后手动重置马达度数。
  将所有小段记录完毕后按程序块中键开始运行一个循环(称之为main)。该循环循环次数等于两个数组长度(由于每次记录时不管马达是

否转动都会记录,所以两个数组的长度肯定是一样的),每次循环中根据之前声明的变量读取数组对应索引值的元素)即之前记录的马达度数),

让马达转动该度数后将索引变量加一。
  为了同步两个马达的阶段,使用一个无限循环(称之为D-L和D-R)中判断两个索引变量是否一样,如果一样,就中断这个D-L或D-

L无限循环;如果不一样就停止马达。
  通过以上三个步骤达到记录路线并重复的目标。


具体操作:
1.运行程序
2.推着小车走若干个小段,每次走完后按上键记录,按下键重置马达度数
3.最后按中键,开始重复步骤


实际问题:
1.小车只能完成前进或后退的重复,如果记录的途中包含拐弯,两个马达就会完全不同步的瞎转,单个马达转动的总度数也与设定不符
2.每次执行完main循环后报错,而不是什么都不做
3.小车记录的数组长度必须在2以上,否则main循环开始执行时直接报错。



程序具体内容在图片中有标注

程序主体

程序主体

创建的模块

创建的模块

最佳答案

查看完整内容

没太看明白,自己弄了个,没你的那么复杂,测试过可行,可以参考下
如果您觉得我的帖子对您有用,请不吝给我一个“赞”!
发表于 2017-11-24 10:14:10 | 显示全部楼层
没太看明白,自己弄了个,没你的那么复杂,测试过可行,可以参考下

角度记录

角度记录

手动控制

手动控制

读取角度行走

读取角度行走

总图

总图
如果您觉得我的帖子对您有用,请不吝给我一个“赞”!
回复

使用道具 举报

 楼主| 发表于 2017-11-24 12:07:25 | 显示全部楼层
求大神解答啊
如果您觉得我的帖子对您有用,请不吝给我一个“赞”!
回复

使用道具 举报

发表于 2017-11-24 19:39:56 | 显示全部楼层
没看懂你想问什么
如果您觉得我的帖子对您有用,请不吝给我一个“赞”!
回复

使用道具 举报

 楼主| 发表于 2017-11-24 20:13:08 | 显示全部楼层
就是我出现的那几个问题有什么解决办法
如果您觉得我的帖子对您有用,请不吝给我一个“赞”!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 马上注册

本版积分规则

QQ|手机版|中文乐高 ( 桂ICP备13001575号-7 )

GMT+8, 2024-5-24 00:48 , Processed in 0.197806 second(s), 22 queries .

Powered by Discuz! X3.5

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表