From 8d89f851fc28be437e164025afa93adfc64d5e4f Mon Sep 17 00:00:00 2001 From: Patrick Goebel Date: Sat, 29 Dec 2012 09:09:57 -0800 Subject: [PATCH] Fixed bug in base_controller.py that reversed left/right for encoder counts and motor speeds --- .../src/ros_arduino_msgs/__init__.pyc | Bin 209 -> 209 bytes ros_arduino_python/src/arduino_driver.pyc | Bin 14252 -> 14300 bytes ros_arduino_python/src/arduino_sensors.pyc | Bin 12162 -> 12178 bytes ros_arduino_python/src/base_controller.py | 9 +++------ ros_arduino_python/src/base_controller.pyc | Bin 7160 -> 7136 bytes 5 files changed, 3 insertions(+), 6 deletions(-) diff --git a/ros_arduino_msgs/src/ros_arduino_msgs/__init__.pyc b/ros_arduino_msgs/src/ros_arduino_msgs/__init__.pyc index d360e186b2a49bd4cfea88b8a24534246422be64..bd4bec1fbb6880d7cda25cb00f6b282cfaf01738 100644 GIT binary patch delta 10 Rcmcb}c#)Cm;-`sB=K&cz1k3;c delta 10 Rcmcb}c#)Bb`SV1k^8gh&1OEU3 diff --git a/ros_arduino_python/src/arduino_driver.pyc b/ros_arduino_python/src/arduino_driver.pyc index 5c14558c6cc49a752d92860793f1e1a6bae0dcb4..1f784d70168bea2799f741d5a61c7fdf6175187f 100644 GIT binary patch delta 2228 zcmb7F-D@0G6hG(A%$igJKnYQ9*oCkfMF?ckbOuH#Jh-*}3=3nRCy_ z@BZ$YcN*U{cE0>A>!}yNer%CizZ~WVaBplgkxx{`$mA4P^nLm4V#)r zjbUQ^d{5q`C3}|wz@WkAI#68zBxjFF(PuV>Fh&#J$6V^f2%OyV*kD`cWK1S!>2_*Z@}{G;nipA*~Pb-+IQCjSagB;uEI5H@EH_!F;+ z3UC`lFBjh6(S1_g2LMfE35%pRyY#cv`e^U)&ZYPX%+f^bgAno%#O+s}GHw(li0;@M1CBm7J20Nb_rX&MTmzUL&Z;~R#Y_pj>9TBv7OegTb+>CI delta 2095 zcmbtVTWB0r82vaz z{(pYC`02$x<4(pEFaNl_g7}x<`7yqmZ32A2XX;w|HoOF85xQ20)eZtS+?_mRjSR%9ns|DZzkmE5YQDrt}ZAEChDEJCbI+Phgj` z(1{4F8`!$qS@(j1;mCzaTq0~<1@F*L>f~f%zQaSUF$uGk#JY>EpFu>vD_^B#;tm2v zK>KeHqLc2|l*>_u(v;&nO^(Qf2dRq5dkw-$`Y$b%GY3kD%GoAmUtv^Q45v;${4h5< z_#}210YmMh83Pi8-{i)J1CvoEtee=HkU*c`oIq{IKoI5nhG=<+eSz|pP4dc7o?N~L zC@FGcg^3Ii-|9Td{Gef%BS{u$6#0aha_1*SIGcSVwDZ?X1}{}MvxjV=U-PfgMEB)6 ze%YQo_i=-riQKZ zHL?9F7yt%r9oX8(jtM3ar{8=_$ySe?P?fZg_F~7kp(5)f8QY#fu2kwsVWKqkaIMyu zmB$~aoa`DpX!et2DWRl_gbA^0g86VEUK=$^-w~Y&Zyz6iVu1|iM}dlJ&a2U3rnn+Q zEAn(KzGd@KXfNLbMhq#ZvHj+Mp!04II!a!HLQ3nqNX;LGl#A|}gino3%`rxEJs7FF zybFy)BZ+2-xNf-KxY)u^My7Qo+!*4T;lfPB1lP^X;yJT zb_f+)Fw?m&MY+l?q6a0rhI`r7PuZAV4rRl!6VFl*T{^KwJpFbuOUbiLG6}=mr%Hpe zVa~~p!%>Ai9NAi;nNud+mnVx`i78b3=(G?;&P?nedU`CyUc;~MABwier|EgFXZBJU z7e_Y9DoAo>n2t~5YI zeB!zJ`jNIrbSBkzi&-_(nu6Z##b}NJ$imN|?(SJ~cG1zXvk1H3=gl4$VIkS9MNFu6 zqofZjjToB6sNiE=nB{z^H>vYfamgh~9*>lWzqa(q6M5N7UNlqfQL~vG6*xN@QQ$5> zO^GntbW8nVr-|4BK8oL&oF-8^+UOluud>6G4vmPKZ?sk{MPAp7!uFEEZHef1v7}`F z|#3vCR~nc9OU;SemG+5a#i2eN{`q&~kIGk?*tN6WSUz`x(TzF#wr*w}P8}LJv9ko! z+@KWyhp;~6(3G>K-s8RM34LkA&8a()(8$E;;3~B+N71w4k$L8%f9AP@0}E4YOmvGY zuj_VBy3P2pSzjL8E)JIPM;CQ!L{KqD8E&3_Zla7#OAjvbP&3s5qA*%H_Gw28JXjnR pycmp4ltUYQLogk!6VE#k*s*4h#-=%I?fQtBs$b*l(#lbaegihV@A3cu delta 1400 zcmb_c%WD%s82^1cyPHS1d6hJcO-rQ@we7`2K?Fsp7cU}IXbs3#ToEQQV7eEPexf1&<>5&1{k;q6e`H^VsSy^amHr$osrE*H{8bq3jUG~!@g17)v+j1C z&wXMd$85NIf;Ok|iG|*(P?rx2>)$+VPr7uX+q2I&@0v@u&Mf_&#GR}Al+c_r3Z{~m zqSsT?7a0*(_0kF#d0^w@I>YQB<#XNXt$h=g@~g71;GzaJpZ>0(&P`iX^eD|8RpHJW z5NT0BmUyVunF%5p-8u5PC;v~@j#_*e&d!&m1AaOfiYCJQ1OmtG)yvsM&RGvPt)aa6 JO<{YKqF?KP^=|+G diff --git a/ros_arduino_python/src/base_controller.py b/ros_arduino_python/src/base_controller.py index c35c287..79bb81b 100755 --- a/ros_arduino_python/src/base_controller.py +++ b/ros_arduino_python/src/base_controller.py @@ -118,7 +118,7 @@ class BaseController: if now > self.t_next: # Read the encoders try: - right_enc, left_enc = self.arduino.get_encoder_counts() + left_enc, right_enc = self.arduino.get_encoder_counts() except: self.bad_encoder_count += 1 rospy.logerr("Encoder exception count: " + str(self.bad_encoder_count)) @@ -180,7 +180,6 @@ class BaseController: odom.twist.twist.linear.y = 0 odom.twist.twist.angular.z = vth - self.odomPub.publish(odom) if now > (self.last_cmd_vel + rospy.Duration(self.timeout)): @@ -189,10 +188,8 @@ class BaseController: # Set motor speeds in encoder ticks per PID loop if not self.stopped: - if self.motors_reversed: - self.arduino.drive(self.v_left, self.v_right) - else: - self.arduino.drive(self.v_right, self.v_left) + self.arduino.drive(self.v_left, self.v_right) + def stop(self): self.stopped = True diff --git a/ros_arduino_python/src/base_controller.pyc b/ros_arduino_python/src/base_controller.pyc index dcef1662620fc65f8433b0bd79d15816a52a5610..28d9fa15d7ff5ffe693195c694472742c1413a22 100644 GIT binary patch delta 2025 zcmZ8iO>7%g5dPlodi}eO9k0E%n>1;Xrs+?D%7Lg-r6NEoTmn)n1zA)+WE0rfI3!&m zK(>5{xFB&rd+ZSj&Lwva2qBJeN5GLQ91usone~Q*WcT^K`JZoQ-u|=w`}Xwbzr51U z(r<6=VfI(z@5_9je#IpOdRz@c3j>3m!M;IcA+&L7U}g*(Jv$R}&~tR}V35PmMbE`B zk6s?b0(ym1Cx<~1!xDO>4GhcZl`*WKS4o*J1|Ei0^s4DOkHH*<&%Zu#I#K54)Dr(= zpzk2I5G60>)&t?@5V|0D%oy{yue_sNb5nSw3%qj5BejCi$uzu~#`9crDjIc!^BJ#k zuHhqWX4KX>H9*+TsGW0a7jYU7LoI5kGj)YBT(TnM4#I5W%+8oSWo( zcXusXL%4|ey6UXs)J_AWfg57pD7+8y%lD&AgiDCGRPY7KBnX!g%m|f~a1DW^C`uGx z$;8i|<#%!{7VxUH-5*?HhHl}bmoPSX?a7wr!E)Q^u;UIb90hC*7TKm7z7JoIjVK&@ zFno83x~8C>{p5XWrYnp9mTU5GP2G5=YUNGc z^0?#w`R|^g)EwU;Uyb||TO*HjLI}@2v>m{vzTI;e@R6wgy z&BlZy!qvs-CabC4K|I<5NEJKP| zvGdaYY)FvfGW@u%cG7bNew#VX3&~-3USf*yMP&*H6!sxi8y6&Can;cFbD{=FBfp{i zn8S$VaeaY79oIRy4XL^Iw}(Fao4K?RrO2y)x~Ihh=I()U%j)ae(lx*VZxw1~h2)jO z{yfdGrMmQmNmb6{DxxdsFUYOJeSc9)P@O9Es=B3Z3N7igj5K+1b&;sCT%u?c=al|6 zj9FBwtmv~Ub{PI83T?83Rc0!3Yv|JoQ@D<3T^Q0cvv#?mxos%>rZ$u`XG@!dD*an( zotxV!{IqfhA1o^Nyf`?!V)&M>x8)i$#~<1{U(%Et$!g<~*-E}>H_kq5ylIkO{cf|s z5gG0u#QpuzUM%x+621Fg;x+$%aKZ!3oT*v1=@^^4uE}x6il$=MjB84kZ+xq0idL1g zSmN0;HSRXeUG5smE3G?at7a`z!Lv&ynY30MexIV`%hr$PyJQ$#o&HG=7po~b5&#q69t>pn660uEP5TmS$7 delta 2058 zcmZWqJ!~6g7=FIH^Ev)G+lkLUJ57@`Bx%SGMW`qYMMZ!FORKgS8d<6g-^pKy?@{P^StjpU;k&l zZ~y7#&-`ERZDH`U`F?}{qcbic(Bf(kTG%&e8EhLw7D5}R24=vp(Xxj^4qA@x9qeb& zanW+o$)c4-XAG^eR40S|96EWl@=NFx&?=x)M5~xGUF>`4l+Y@r=PdTi=sf$n>olX` zHK&%`-vinXVhd67N@g(-ZU&(Xa(nbKi(AV3C{tS#Uj72Fkn%_^B6Nlt-azA7rq&mY zafA~?UUj75BdiUn^$|5d*ceiqBkCmL)E~N6+6uP3ZZr-lwKI%iCeO#xoWE zJ?<*WL3#33mt=J>vDLju+kiPZp{8g<#**~KXRoV)~&WHVMST- zJWj7CGMFfFkU8Jj9N5XBal$I4@TP|}l-FXWr7K8*BnRI}7oHICTwNS234|mx4-I*h zP$RQ9t@S6sMnrcY*k&f|IGKB*Q`(P1zW8$q`^t~Y6iK;>(w<_G2UB!fYNjTozB8ym6lzM2_ z|8wX9mDpvV4Mb_i)gQXUD|Q&Q2gV_*uWMb`06Ux*)MEXT=i}4;=nC3XG8lR#w6AK~ zOAz9;8m9#wXY`px8nPI?NYooIQS`16rF{)O){!c6`n(`^=%i5kBNB}gh$EqS30lHi zK(r`yfyn?N*EIqboa`4BLxQ|FZL!G~URLAWtZ2?Dw2Gsrwn(p``$RVcl{V{*Xj#py z$UHKKpI>4|E6Q6=c~5O=qe6Al+&B-bADEjDrr8v+G;Y}4J>Fg_bNAqNSr&wm%I z{9)YQKG-7Sf&J~BkSrUFk^~l>B0(!)0?g635aRn}g4utw~clD6pvx?u*1g`cO0-QprDfO?ykr z5cMysH>4YNXh|V1^8)I|tUe{kV+YAgXVq{_^D999a02|FUzVw`vBcqoyStL!$2fn| km@<<;bAQwjiZ#LH6|JJxU`mUYmz*_!GxyI=Cm)%A0Vy0;kN^Mx