此代码用于使用 C 使模拟器中的机器人在特定路径中移动。while循环的代码是我需要进行更改的地方,我想知道如何更改代码以使机器人直线移动并停止,以及如何使用“定时距离”使其在三角形中移动。
while (1) {
sprintf(buf, "M LR 60 -60\n");
write(sock, buf, strlen(buf));
memset(buf, 0, 80);
read(sock, buf, 80);
}
M LR
是机器人左右电机的名称(机器人有两个电机使其移动),60 和 -60 是它们的速度。此代码使机器人旋转。
完整代码在此链接中:[ C Robot ]
如何使这段代码工作?
int k = 1;
for (k = 1; k < 3 ; k++){
sprintf(buf, "M LR 20 10\n");
write(sock, buf, strlen(buf));
memset(buf, 0, 80);
read(sock, buf, 80);
}
for (k=3; k > 3; k++) {
sprintf(buf, "M LR 0 0\n");
write(sock, buf, strlen(buf));
memset(buf, 0, 80);
read(sock, buf, 80);
}