ACRXXXEϵÁÐÒDZíʹÓõÄÊÇModbus-RTUͨѶÐÒ飬MODBUSÐÒéÏêϸ¶¨ÒåÁËУÑéÂë¡¢Êý¾ÝÐòÁеȣ¬ÕâЩ¶¼ÊÇÌض¨Êý¾Ý½»»»µÄ±ØÒªÄÚÈÝ¡£MODBUSÐÒéÔÚÒ»¸ùͨѶÏßÉÏʹÓÃÖ÷´ÓÓ¦´ðʽÁ¬½Ó(°ëË«¹¤)£¬ÕâÒâζ×ÅÔÚÒ»¸ùµ¥¶ÀµÄͨѶÏßÉÏÐźÅÑØ×ÅÏà·´µÄÁ½¸ö·½Ïò´«Êä¡£Ê×ÏÈ£¬Ö÷¼ÆËã»úµÄÐźÅÑ°Ö·µ½Ò»Ì¨Î¨Ò»µÄÖÕ¶ËÉ豸(´Ó»ú)£¬È»ºó£¬ÖÕ¶ËÉ豸·¢³öµÄÓ¦´ðÐźÅÒÔÏà·´µÄ·½Ïò´«Êä¸øÖ÷»ú¡£
ModbusÐÒéÖ»ÔÊÐíÔÚÖ÷»ú(PC£¬PLCµÈ)ºÍÖÕ¶ËÉ豸֮¼äͨѶ£¬¶ø²»ÔÊÐí¶ÀÁ¢µÄÖÕ¶ËÉ豸֮¼äµÄÊý¾Ý½»»»£¬ÕâÑù¸÷ÖÕ¶ËÉ豸²»»áÔÚËüÃdzõʼ»¯Ê±Õ¼¾ÝͨѶÏß·£¬¶ø½öÏÞÓÚÏìÓ¦µ½´ï±¾»úµÄ²éѯÐźš£
1.2 ²éѯ¡ª»ØÓ¦ÖÜÆÚ
1.2.1 ²éѯ ²éѯÏûÏ¢ÖеŦÄÜ´úÂë¸æÖ®±»Ñ¡ÖеĴÓÉ豸ҪִÐкÎÖÖ¹¦ÄÜ¡£Êý¾Ý¶Î°üº¬ÁË´ÓÉ豸ҪִÐй¦ÄܵÄÈκθ½¼ÓÐÅÏ¢¡£ÀýÈ繦ÄÜ´úÂë03ÊÇÒªÇó´ÓÉ豸¶Á±£³Ö¼Ä´æÆ÷²¢·µ»ØËüÃǵÄÄÚÈÝ¡£Êý¾Ý¶Î±ØÐë°üº¬Òª¸æÖ®´ÓÉ豸µÄÐÅÏ¢£º´ÓºÎ¼Ä´æÆ÷¿ªÊ¼¶Á¼°Òª¶ÁµÄ¼Ä´æÆ÷ÊýÁ¿¡£´íÎó¼ì²âÓòΪ´ÓÉ豸ÌṩÁËÒ»ÖÖÑéÖ¤ÏûÏ¢ÄÚÈÝÊÇ·ñÕýÈ·µÄ·½·¨¡£
1.2.2 »ØÓ¦ Èç¹û´ÓÉ豸²úÉúÒ»Õý³£µÄ»ØÓ¦£¬ÔÚ»ØÓ¦ÏûÏ¢ÖеŦÄÜ´úÂëÊÇÔÚ²éѯÏûÏ¢ÖеŦÄÜ´úÂëµÄ»ØÓ¦¡£Êý¾Ý¶Î°üÀ¨ÁË´ÓÉ豸ÊÕ¼¯µÄÊý¾Ý£ºÈç¼Ä´æÆ÷Öµ»ò״̬¡£Èç¹ûÓдíÎó·¢Éú£¬¹¦ÄÜ´úÂ뽫±»ÐÞ¸ÄÒÔÓÃÓÚÖ¸³ö»ØÓ¦ÏûÏ¢ÊÇ´íÎóµÄ£¬Í¬Ê±Êý¾Ý¶Î°üº¬ÁËÃèÊö´Ë´íÎóÐÅÏ¢µÄ´úÂë¡£´íÎó¼ì²âÓòÔÊÐíÖ÷É豸ȷÈÏÏûÏ¢ÄÚÈÝÊÇ·ñ¿ÉÓá£
1.3 ´«Ê䷽ʽ
´«Ê䷽ʽÊÇÖ¸Ò»¸öÊý¾ÝÖ¡ÄÚһϵÁжÀÁ¢µÄÊý¾Ý½á¹¹ÒÔ¼°ÓÃÓÚ´«ÊäÊý¾ÝµÄÓÐÏÞ¹æÔò£¬ÏÂÃ涨ÒåÁËÓëModbus ÐÒé¨C RTU·½Ê½Ïà¼æÈݵĴ«Ê䷽ʽ¡£
ÿ¸ö×Ö½ÚµÄλ£º
¡¤ 1¸öÆðʼλ
¡¤ 8¸öÊý¾Ý룬×îСµÄÓÐЧλÏÈ·¢ËÍ
¡¤ ÎÞÆæżУÑéλ
¡¤ 1¸öֹͣλ
´íÎó¼ì²â(Error checking)£ºCRC(Ñ»·ÈßÓàУÑé)
1.4 ÐÒé
µ±Êý¾ÝÖ¡µ½´ïÖÕ¶ËÉ豸ʱ£¬Ëüͨ¹ýÒ»¸ö¼òµ¥µÄ¡°¶Ë¿Ú¡±½øÈ뱻Ѱַµ½µÄÉ豸£¬¸ÃÉ豸ȥµôÊý¾ÝÖ¡µÄ¡°Ðŷ⡱(Êý¾ÝÍ·)£¬¶ÁÈ¡Êý¾Ý£¬Èç¹ûûÓдíÎ󣬾ÍÖ´ÐÐÊý¾ÝËùÇëÇóµÄÈÎÎñ£¬È»ºó£¬Ëü½«×Ô¼ºÉú³ÉµÄÊý¾Ý¼ÓÈ뵽ȡµÃµÄ¡°Ðŷ⡱ÖУ¬°ÑÊý¾ÝÖ¡·µ»Ø¸ø·¢ËÍÕß¡£·µ»ØµÄÏìÓ¦Êý¾ÝÖаüº¬ÁËÒÔÏÂÄÚÈÝ£ºÖն˴ӻúµØÖ·(Address)¡¢±»Ö´ÐÐÁ˵ÄÃüÁî(Function)¡¢Ö´ÐÐÃüÁîÉú³ÉµÄ±»ÇëÇóÊý¾Ý(Data)ºÍÒ»¸öУÑéÂë(Check)¡£·¢ÉúÈκδíÎ󶼲»»áÓгɹ¦µÄÏìÓ¦£¬»òÕß·µ»ØÒ»¸ö´íÎóָʾ֡¡£
1.4.1 Êý¾ÝÖ¡¸ñʽ
Address Function Data Check
8-Bits 8-Bits N x 8-Bits 16-Bits
1.4.2 µØÖ·(Address)Óò
µØÖ·ÓòÔÚÖ¡µÄ¿ªÊ¼²¿·Ö£¬ÓÉÒ»¸ö×Ö½Ú(8λ¶þ½øÖÆÂë)×é³É£¬Ê®½øÖÆΪ0¡«255£¬ÔÚÎÒÃǵÄϵͳÖÐֻʹÓÃ1~247,ÆäËüµØÖ·±£Áô¡£ÕâЩλ±êÃ÷ÁËÓû§Ö¸¶¨µÄÖÕ¶ËÉ豸µÄµØÖ·£¬¸ÃÉ豸½«½ÓÊÕÀ´×ÔÓëÖ®ÏàÁ¬µÄÖ÷»úÊý¾Ý¡£Ã¿¸öÖÕ¶ËÉ豸µÄµØÖ·±ØÐëÊÇΨһµÄ£¬½ö½ö±»Ñ°Ö·µ½µÄÖն˻áÏìÓ¦°üº¬Á˸õØÖ·µÄ²éѯ¡£µ±Öն˷¢ËÍ»ØÒ»¸öÏìÓ¦£¬ÏìÓ¦ÖеĴӻúµØÖ·Êý¾Ý±ã¸æËßÁËÖ÷»úÄĄ̈ÖÕ¶ËÕýÓëÖ®½øÐÐͨÐÅ¡£
1.4.3 ¹¦ÄÜ(Function)Óò
¹¦ÄÜÓò´úÂë¸æËßÁ˱»Ñ°Ö·µ½µÄÖÕ¶ËÖ´ÐкÎÖÖ¹¦ÄÜ¡£Ï±íÁгöÁ˸ÃϵÁÐÒDZíÓõ½µÄ¹¦ÄÜÂ룬ÒÔ¼°ËüÃǵÄÒâÒåºÍ¹¦ÄÜ¡£
´úÂë | ÒâÒå | ÐÐΪ |
3 | ¶ÁÊý¾Ý¼Ä´æÆ÷ | »ñµÃÒ»¸ö»ò¶à¸ö¼Ä´æÆ÷µÄµ±Ç°¶þ½øÖÆÖµ |
16 | Ô¤Ööà¼Ä´æÆ÷ | É趨¶þ½øÖÆÖµµ½Ò»ÏµÁжà¼Ä´æÆ÷ÖÐ(²»¶Ô ACRXXXE¿ª·Å) |
1.4.4 Êý¾Ý(Data)Óò
1.4.5 ´íÎóУÑé(Check)Óò
¸ÃÓòÔÊÐíÖ÷»úºÍÖն˼ì²é´«Êä¹ý³ÌÖеĴíÎó¡£ÓÐʱ£¬ÓÉÓÚµçÔëÉùºÍÆäËü¸ÉÈÅ£¬Ò»×éÊý¾ÝÔÚ´ÓÒ»¸öÉ豸´«Êäµ½ÁíÒ»¸öÉ豸ʱÔÚÏß·ÉÏ¿ÉÄܻᷢÉúһЩ¸Ä±ä£¬³ö´íУÑéÄܹ»±£Ö¤Ö÷»ú»òÕßÖն˲»È¥ÏìÓ¦ÄÇЩ´«Êä¹ý³ÌÖз¢ÉúÁ˸ıäµÄÊý¾Ý£¬Õâ¾ÍÌá¸ßÁËϵͳµÄ°²È«ÐÔºÍЧÂÊ£¬´íÎóУÑéʹÓÃÁË16λѻ·ÈßÓàµÄ·½·¨(CRC16)¡£
1.5 ´íÎó¼ì²âµÄ·½·¨
´íÎóУÑé(CRC)ÓòÕ¼ÓÃÁ½¸ö×Ö½Ú£¬°üº¬ÁËÒ»¸ö16λµÄ¶þ½øÖÆÖµ¡£CRCÖµÓÉ´«ÊäÉ豸¼ÆËã³öÀ´£¬È»ºó¸½¼Óµ½Êý¾ÝÖ¡ÉÏ£¬½ÓÊÕÉ豸ÔÚ½ÓÊÕÊý¾ÝʱÖØмÆËãCRCÖµ£¬È»ºóÓë½ÓÊÕµ½µÄCRCÓòÖеÄÖµ½øÐбȽϣ¬Èç¹ûÕâÁ½¸öÖµ²»ÏàµÈ£¬¾Í·¢ÉúÁË´íÎó¡£
CRCÔËËãʱ£¬Ê×ÏȽ«Ò»¸ö16λµÄ¼Ä´æÆ÷Ô¤ÖÃΪȫ1£¬È»ºóÁ¬Ðø°ÑÊý¾ÝÖ¡ÖеÄÿ¸ö×Ö½ÚÖеÄ8λÓë¸Ã¼Ä´æÆ÷µÄµ±Ç°Öµ½øÐÐÔËË㣬½ö½öÿ¸ö×Ö½ÚµÄ8¸öÊý¾Ýλ²ÎÓëÉú³ÉCRC£¬ÆðʼλºÍÖÕֹλÒÔ¼°¿ÉÄÜʹÓõÄÆæżλ¶¼²»Ó°ÏìCRC¡£ÔÚÉú³ÉCRCʱ£¬Ã¿¸ö×Ö½ÚµÄ8λÓë¼Ä´æÆ÷ÖеÄÄÚÈݽøÐÐÒì»ò£¬È»ºó½«½á¹ûÏòµÍλÒÆ룬¸ßλÔòÓá°0¡±²¹³ä£¬×îµÍλ(LSB)ÒƳö²¢¼ì²â£¬Èç¹ûÊÇ1£¬¸Ã¼Ä´æÆ÷¾ÍÓëÒ»¸öÔ¤ÉèµÄ¹Ì¶¨Öµ(0A001H)½øÐÐÒ»´ÎÒì»òÔËË㣬Èç¹û×îµÍλΪ0£¬²»×÷Èκδ¦Àí¡£
ÉÏÊö´¦ÀíÖظ´½øÐУ¬Ö±µ½Ö´ÐÐÍêÁË8´ÎÒÆλ²Ù×÷£¬µ±×îºóһλ(µÚ8λ)ÒÆÍêÒÔºó£¬ÏÂÒ»¸ö8λ×Ö½ÚÓë¼Ä´æÆ÷µÄµ±Ç°Öµ½øÐÐÒì»òÔËË㣬ͬÑù½øÐÐÉÏÊöµÄÁíÒ»¸ö8´ÎÒÆλÒì»ò²Ù×÷£¬µ±Êý¾ÝÖ¡ÖеÄËùÓÐ×Ö½Ú¶¼×÷ÁË´¦Àí£¬Éú³ÉµÄ×îÖÕÖµ¾ÍÊÇCRCÖµ¡£
Éú³ÉÒ»¸öCRCµÄÁ÷³ÌΪ£º
1 Ô¤ÖÃÒ»¸ö16λ¼Ä´æÆ÷Ϊ0FFFFH(È«1)£¬³Æ֮ΪCRC¼Ä´æÆ÷¡£
2 °ÑÊý¾ÝÖ¡ÖеĵÚÒ»¸ö×Ö½ÚµÄ8λÓëCRC¼Ä´æÆ÷ÖеĵÍ×Ö½Ú½øÐÐÒì»òÔËË㣬½á¹û´æ»ØCRC¼Ä´æÆ÷¡£
3 ½«CRC¼Ä´æÆ÷ÏòÓÒÒÆһ룬×î¸ßλÌîÒÔ0£¬×îµÍλÒƳö²¢¼ì²â¡£
4 Èç¹û×îµÍλΪ0£ºÖظ´µÚÈý²½(ÏÂÒ»´ÎÒÆλ);Èç¹û×îµÍλΪ1£º½«CRC¼Ä´æÆ÷ÓëÒ»¸öÔ¤ÉèµÄ¹Ì¶¨Öµ(0A001H)½øÐÐÒì»òÔËËã¡£
5 Öظ´µÚÈý²½ºÍµÚËIJ½Ö±µ½8´ÎÒÆλ¡£ÕâÑù´¦ÀíÍêÁËÒ»¸öÍêÕûµÄ°Ëλ¡£
6 Öظ´µÚ2²½µ½µÚ5²½À´´¦ÀíÏÂÒ»¸ö°Ëλ£¬Ö±µ½ËùÓеÄ×Ö½Ú´¦Àí½áÊø¡£
7 ×îÖÕCRC¼Ä´æÆ÷µÄÖµ¾ÍÊÇCRCµÄÖµ¡£
´ËÍ⻹ÓÐÒ»ÖÖÀûÓÃÔ¤ÉèµÄ±í¸ñ¼ÆËãCRCµÄ·½·¨£¬ËüµÄÖ÷ÒªÌصãÊǼÆËãËٶȿ죬µ«ÊDZí¸ñÐèÒª½Ï´óµÄ´æ´¢¿Õ¼ä£¬¸Ã·½·¨´Ë´¦²»ÔÙ׸Êö£¬Çë²ÎÔÄÏà¹Ø×ÊÁÏ¡£
Êý¾ÝÓò°üº¬ÁËÖÕ¶ËÖ´ÐÐÌض¨¹¦ÄÜËùÐèÒªµÄÊý¾Ý»òÕßÖÕ¶ËÏìÓ¦²éѯʱ²É¼¯µ½µÄÊý¾Ý¡£ÕâЩÊý¾ÝµÄÄÚÈÝ¿ÉÄÜÊÇÊýÖµ¡¢²Î¿¼µØÖ·»òÕßÉèÖÃÖµ¡£ÀýÈ磺¹¦ÄÜÓòÂë¸æËßÖն˶ÁÈ¡Ò»¸ö¼Ä´æÆ÷£¬Êý¾ÝÓòÔòÐèÒªÖ¸Ã÷´ÓÄĸö¼Ä´æÆ÷¿ªÊ¼¼°¶ÁÈ¡¶àÉÙ¸öÊý¾Ý£¬ÄÚǶµÄµØÖ·ºÍÊý¾ÝÒÀÕÕÀàÐͺʹӻúÖ®¼äµÄ²»Í¬ÄÚÈݶøÓÐËù²»Í¬¡£