找回密码
 马上注册

QQ登录

只需一步,快速开始

查看: 4627|回复: 1

robotc 测试数据跳变是何原因呀

[复制链接]
发表于 2016-3-10 22:34:47 | 显示全部楼层 |阅读模式
悬赏1乐币未解决
写个简单的robotc 程序,BC两轮前进,每转动1度做一次记录.察看文件前面数据正常,后面一段就跳变,是什么原因呀.
程序很简单:
#pragma config(Motor,  motorC,          leftwheel,     tmotorEV3_Large, PIDControl, encoder)
#pragma config(Motor,  motorB,          rightwheel,    tmotorEV3_Large, PIDControl, encoder)

int old_encode, g_encode;
task main()
{
  motor[motorC] = 20;
  motor[motorB] = 20;

     if (!datalogOpen(9, 2, false))
        writeDebugStreamLine("Unable to open datalog");

  resetMotorEncoder(motorC);
    old_encode = getMotorEncoder(motorC);
  time1[T1] = 0;
  while(time1[T1] < 1500)
  {
   g_encode = getMotorEncoder(motorC);
    if (g_encode > old_encode) '如果有变化就 记录
    {
        datalogAddLong(0, time1[T1]);
        datalogAddLong(1, g_encode);
       old_encode = g_encode;
        }
  }
  datalogClose();
  motor[motorC] = 0;
  motor[motorB] = 0;
}

=========记录的结果摘取部分============
558,99
558,100
564,101
570,102
573,103
579,104
584,105
591,106
591,173               '-----这个地方跳变了
591,174
933,175
939,176



如果您觉得我的帖子对您有用,请不吝给我一个“赞”!
 楼主| 发表于 2016-3-12 11:22:35 | 显示全部楼层
问题找到了,因为文件写盘速度慢影响了程序的反应,所以有跳变.改变方法,先存在内存中,在写文件
如果您觉得我的帖子对您有用,请不吝给我一个“赞”!
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-11-15 18:18 , Processed in 0.085585 second(s), 18 queries .

Powered by Discuz! X3.5

Copyright © 2001-2020, Tencent Cloud.

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