大佬们,我使用修改过后的ros_arduino_bridge在arduino中对左右电机进行了调试,发现左右电机都能够正常驱动转动,但是只有左电机能返回编码器的数值,右电机始终无法返回编码器数值,一直都是0.最初,我怀疑是右电机编码器存在问题,于是将左电机卸下,把右电机接上左电机的连线,发现编码器也能有数据反馈,且数据是变动的,可以发现右电机编码器正常,于是我又怀疑是右电机配备的编码器引线存在问题,但是用万用表进行测试后发现,编码器信号线都是存在电流的,那应该信号线没有问题.现在就很迷茫,不知道是什么问题导致返回数据只有一个数据,一直都是0.这是调试时候代码设定只返回左电机的编码器数值吗?还是我连线的问题,我根据代码里编码器信号线所接引脚进行接线,左电机连的mega2560的18和19号引脚,右电机连的20和21号引脚,这样连线正确吗?

/* *************************************************************
   Encoder driver function definitions - by James Nugen
   ************************************************************ */
   
   
#ifdef ARDUINO_ENC_COUNTER
  //below can be changed, but should be PORTD pins; 
  //otherwise additional changes in the code are required
  #define LEFT_ENC_PIN_A PD2  //pin 2
  #define LEFT_ENC_PIN_B PD3  //pin 3
  
  //below can be changed, but should be PORTC pins
  #define RIGHT_ENC_PIN_A PD0  //pin A4
  #define RIGHT_ENC_PIN_B PD1   //pin A5
#endif
   
long readEncoder(int i);
void resetEncoder(int i);
void resetEncoders();

大佬们,这是调试过程中的测试截图:64及之前是双电机共同调试的调试结果,后面的是将右电机接至左电机接线的调试结果

大佬们,这个问题该如何解决呢?