Announcements

Register now for the most anticipated Asia Pacific Power Seminar 2022

Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

Motor Control ICs Forum Discussions

sohail
Level 2
10 questions asked 10 replies posted 25 sign-ins
Level 2

Hi@ Krupashankar

                                                I am Trying To Communicate with IMC101T-T038 by RX1 & TX1. Communication has Establish but Data is not as per Imotion Software reference manual. Motor Speed Should Received in Data word1? All Other command of Status code will Reply in same manner.

Other Command 1,2,3 will not  get any Data. What I am doing wrong!

 

 

Data Sent                                                           Data Received
Node_adress infin = 0x01                                    1
Command infin = 0x00                                         80
data_world0_Lowb infin = 0x00                       0
data_word0_Highb infin = 0x01                       1
data_word1_Lowb infin = 0x00                        0
data_word1_Highb infin = 0x00                      0
check_sum_low infin = 0xFF                            FF
check_sum_High infin = 0xFE                          7E

 

 

pdf.png

 

Thanks

0 Likes
1 Solution
Krupashankar
Moderator
Moderator 250 replies posted 100 solutions authored 5 likes given
Moderator

Hi @sohail,

Please refer to section 2.3.6 Checksum in document iMOTION – MCE – Software Reference Manual v1.3 

First Step : 0x0501 + 0x7D01 + 0x0000 = 0x8202 

Second Step: 2's Complement ( 0x8202) = 0x7DFE

Please let us know if any further details is required

 

Thanks,

Krupashankar

 

View solution in original post

0 Likes
3 Replies
Krupashankar
Moderator
Moderator 250 replies posted 100 solutions authored 5 likes given
Moderator

Hi @sohail,

Possible cause of communication error:

  • This problem could be due to weak drive signal strength. Please use the RS232 line driver and receiver for UART communication. 

  • Ques- 21 User UART Tx Delay Time is not 0. Please set  User UART Tx Delay Time to Zero.

  • Baud rate mismatch. Please ensure the same baud rate in transmitter and receiver.

Can you please try sending this command and let us know the reply:

Register_Read[] = { 0x01, 0x05, 0x01, 0x7D, 0x00, 0x00, 0xFE, 0x7D};

Register_Read :

0x01- Node address

0x05- Read Register

0x01 - App ID

0x7D- Register ID (125-MotorSpeed)

0x0000- Default

0x7DFE - Checksum ( -1 * ( 0x0301 + 0x0000 + ox 0101))

This command returns the value from register 125-MotorSpeed.

Can you please share the Configuration(.mc2) file, Schematics, and operating voltage of ESP32. This will help us to understand the issue.

 

Thanks,

Krupashankar

 

0 Likes
sohail
Level 2
10 questions asked 10 replies posted 25 sign-ins
Level 2

Hi @Krupashankar 

                                            When  I Transfer Register_Read[] = { 0x01, 0x05, 0x01, 0x7D, 0x00, 0x00, 0xFE, 0x7D};

I Received this Data.

0 data has Received=1
1 data has Received=85
2 data has Received=1
3 data has Received=7D
4 data has Received=36
5 data has Received=0
6 data has Received=C8
7 data has Received=FD

I think Problem is in calculation of Checksum Formula. As per your data

my understanding of formula 

1st step = (ox0501+ox017D+ox0000) =067E

2nd step (FFFF- 067E)+1  = F982 is check sum

but  you're check sum is  0xFE, 0x7D.

 

Kindly Explain what step I am doing wrong.

 

Thanks

 

 

0 Likes
Krupashankar
Moderator
Moderator 250 replies posted 100 solutions authored 5 likes given
Moderator

Hi @sohail,

Please refer to section 2.3.6 Checksum in document iMOTION – MCE – Software Reference Manual v1.3 

First Step : 0x0501 + 0x7D01 + 0x0000 = 0x8202 

Second Step: 2's Complement ( 0x8202) = 0x7DFE

Please let us know if any further details is required

 

Thanks,

Krupashankar

 

0 Likes