1
私は現在、来るべきロボット工学大会のためのロボット用のコーディングを準備中です。私は自律モード(人を制御せずに移動)を行うように私たちのロボットを設定しようとしていますが、問題にぶつかりました。私は、ロボットを左、右、前、後ろに動かすことができます(私たちはmecanumドライブを使用しています)。自律している間、私たちはそれが前進することを望み、それが完了した後に横に移動します。私たちはすぐにそれらをやっても何の問題もありませんが、後にすることは問題に遭うところです。私たちの現在のコード列は次のとおりです。Robotics Mecanum Drive Programming
def autonomous(self):
for a in range(2):
zero = 0 #lateral movement (positive is left)
one = -1 #forward movement (negative is forwards)
four = 0 #rotation (positive is clockwise)
#set speed
speedFLM = four + zero - one
speedFRM = four + zero + one
speedRRM = four - zero + one
speedRLM = four - zero - one
#speed modifier
speedFLM = speedFLM/2
speedFRM = speedFRM/2
speedRRM = speedRRM/2
speedRLM = speedRLM/2
#set motor output
self.FLM.set(speedFLM)
self.FRM.set(speedFRM)
self.RRM.set(speedRRM)
self.RLM.set(speedRLM)
wpilib.Timer.delay(1)
#reset to zero
self.FLM.set(0)
self.FRM.set(0)
self.RRM.set(0)
self.RLM.set(0)
は、すべてのモーターを同時に有効にしているようです。なぜあなたは関連するものを有効にしないで、遅延を使用し、それらをオフにして、他のものを有効にしますか? –
同じことを2回繰り返すループがあります。あなたはある事をし、次に別の事をする論理がないように見えます。 'for'ループの代わりに、ループの内部ロジックを2回書きますが、2回目の反復で' #set speed'セクションの内容を変更しますか? –