RAPIROの姿勢が予想外の傾きになる。
下記ソースコード(公式のソースコード)を使用し、
RAPIROの体の初期位置の値を調整していました。
調整後、マイコン書き込みを実行したのですが、
書き込み完了後、RAPIROが写真のように体が値とは全然違う傾き方をするようになりました。
何が原因なのでしょうか。
<書き込んだソースファイル>
#include
#define SHIFT 7
#define R 0 // Red LED
#define G 1 // Green LED
#define B 2 // Blue LED
#define TIME 15 // Column of Time
#define MAXSN 12 // Max Number of Servos
#define MAXMN 10 // Max Number of Motions
#define MAXFN 8 // Max Number of Frames
#define POWER 17 // Servo power supply control pin
#define ERR -1 // Error
int i = 0;
int t = 1;
Servo servo[MAXSN];
uint8_t eyes[3] = { 0, 0, 0};
// Fine angle adjustments (degrees)
int trim[MAXSN] = { 0, // Head yaw
0, // Waist yaw
0, // R Sholder roll
0, // R Sholder pitch
0, // R Hand grip
0, // L Sholder roll
-10, // L Sholder pitch
-30, // L Hand grip
0, // R Foot yaw
-10, // R Foot pitch
0, // L Foot yaw
0}; // L Foot pitch
int nowAngle[MAXSN] = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; // Initialize array to 0
int targetAngle[MAXSN] = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; // Initialize array to 0
int deltaAngle[MAXSN] = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; // Initialize array to 0
uint8_t bufferAngle[MAXSN] = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; // Initialize array to 0
uint8_t tempAngle[MAXSN] = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; // Initialize array to 0
int nowBright[3] = { 0, 0, 0}; // Initialize array to 0
int targetBright[3] = { 0, 0, 0}; // Initialize array to 0
int deltaBright[3] = { 0, 0, 0}; // Initialize array to 0
uint8_t bufferBright[3] = { 0, 0, 0}; // Initialize array to 0
uint8_t tempBright[3] = { 0, 0, 0}; // Initialize array to 0
double startTime = 0; // Motion start time(msec)
double endTime = 0; // Motion end time(msec)
int remainingTime = 0; // Motion remaining time(msec)
uint8_t bufferTime = 0; // Motion buffer time (0.1sec)
uint8_t motionNumber = 0;
uint8_t frameNumber = 0;
char mode = 'M';
uint8_t motion[MAXMN][MAXFN][16]={
~未変更のため割愛~
//Read ASCII One-digit
int readOneDigit() {
int buf;
while(!Serial.available()) {}
buf = Serial.read() - 48;
if(buf < 0 || 9 < buf){
buf = ERR;
}
return buf;
}
あれから調べて見てわかったのですが、
組み立て時に、Raspberry Pi Type B 512MB を接続して
Arduinoから書き込み等してました。
Raspberry Pi Type Bを接続した状態で、
電源を入れると、傾かないのですが、
Raspberry Pi Type Bをはずした状態で、電源を入れると
写真のように傾いてしまうようです。
これは、RAPIRO基盤が壊れたのでしょうか?
Raspberry Pi Type Bがこわれたのでしょうか?
動画:満充電でない電池で動作させたケース2 http://wiki.rapiro.com/page/troubleshoot_ja/
と同じように見えますが、電源は何をお使いでしょうか。
>ShinichiOhki さん
情報ありがとうございます。
確かに紹介していただいた動画に動作が似ている気がします。
「Panasonic eneloop 単3形充電池 12本パック スタンダードモデル BK-3MCC/12」
の電池を使用しております。
この電池ではだめなのでしょうか。
Read Terms of Service upon submitting. 投稿する前に利用規約をお読みください。