EunGyeongKim

[논문정리 ] Camber Angle Inspection for Vehicle Wheel Alignments 본문

기타 공부/자동차 동역학

[논문정리 ] Camber Angle Inspection for Vehicle Wheel Alignments

EunGyeongKim 2023. 8. 11. 08:00

💡
차량의 wheel alignments을 위한 camber angle 검사(MCU 기반3축 가속도 센서)
  • MCU = micro-control unit

wheel alignment의 중요성

  • Camber angle
    • 조향 제어와 안정성에 영향
  • Toe angle
    • 연료 효율성, tire lifespan, driving comfort에 영향을 줌.

접근 방법

  • MCU기반 접근방식은 3축 가속도 센서를 이용해 중력값을 획득하고, camber 검사 시스템와 차량간의 좌표변환을 적용시킴
  • 캠버 시스템의 오정렬 각도를 자체적으로 보상할 수 있으므로, X축과 Z의 캠버축 완벽한 각도 조절이 필요하지 않음.
  • 본 논문에서의 데카르트 좌표 C의 구성요소를 다음과 같이 표현함
    (xCyCzC)C=[iC jC kC][xCyCzC]\begin{pmatrix}x_C \\y_C \\z_C\end{pmatrix}_C = [\vec{i_C} \ \vec{j_C} \ \vec{k_C}]\begin{bmatrix}x_C \\y_C \\z_C\end{bmatrix}
    • iC\vec{i_C} : 직교좌표 C의 x축 unit vector
    • jC\vec{j_C} : 직교좌표 C의 y축 unit vector
    • kC\vec{k_C} : 직교좌표 C의 z축 unit vector
  • (xC,yc,zC)CT(x_C, y_c, z_C)^T_C : 직교좌표 C의 벡터를 나타냄
  • [xC,yC,zC]T[x_C, y_C, z_C]^T : 벡터에 따른 3x1 매트릭스
  • 이 논문에서 C는 차량, 바퀴, 가속도계 또는 캠버 검사 시스템이 될 수 있음.

차량과 캠버 검사 시스템의 좌표 변환

  • 캠버 검사 시스템은 좌표 S의 캠버 검사 시스템에서 로컬 중력(1g = 9.8m/s2와 같지는 않음)를 감지 할 수 있지만, 로컬중력은 차량좌표 V의 아래쪽에만 있음.
  • 좌표 V와 S사이의 좌표 변환은 로컬 중력이 좌표 V와 S에 따라 다른 표현을 가진 동일한 벡터임
    • 캠버측정을 위한 계산을 용이하게 함.
    • 그림 2는 좌표 V를 보여줌
      • 좌표V의 x, y, z축은 각각 전방, 우측, 하향으로 정의됨.
      front view of the vehicle and wheel coordinates with the pitch (camber) angle
    • 시스템 주축과 정렬된 좌표 S의 x,y, z.

      ⇒ 좌표 S을 이용해 캠버각도 측정

      right side view of the front-right wheel and the camber inspection system with yaw angles.
    • pitch각도와 yaw각도를 포함하여 좌표 V와 S사이의 오일러 각은 좌표 변환에 필요함.
      • camber각도는 분명히 pitch 각도 θ\theta
      • yaw 각도 ψ \psi 는 좌표 S의 x축과 휠좌표 W가 어긋난 각도임.
      • pitch 각도 : 좌표 V의 X축이 회전
      • yaw 각도 : 좌표 Y축으로 회전
      • 직관적으로 V, W, S의 원점은 동일.
    • 중력과 같은 물체는 다른 좌표에 있을 수 있음.
      (xVyVzV)V=(xWyWzW)W\begin{pmatrix} x_V \\ y_V \\ z_V\end{pmatrix} _V = \begin{pmatrix} x_W \\ y_W \\ z_W \end{pmatrix}_W

      or

       [iV,jV,kV] [xVyVzV]= [iW,jW.kW] [xWyWzW] \left [ \vec{i_V}, \vec{j_V}, \vec{k_V}\right ] \begin{bmatrix}x_V \\y_V \\z_V\end{bmatrix} =  \left [ \vec{i_W}, \vec{j_W}. \vec{k_W}\right ] \begin{bmatrix}x_W \\y_W \\z_W\end{bmatrix}
  • 정의에 따르면 그림 2의 좌표는 좌표 V와 W에 의해 변환됨 (1)
    [xVyVzV]=[1000cosθsinθ0sinθcosθ][xWyWzW] \begin{bmatrix}x_V \\y_V \\z_V\end{bmatrix} = \begin{bmatrix}1 & 0 & 0 \\ 0 & cos \theta & -sin \theta \\ 0 & sin \theta & cos \theta \end{bmatrix} \begin{bmatrix}x_W\\ y_W\\z_W \end{bmatrix}
  • 비슷하게 그림3에서의 정의는 좌표 W와 S사이에서 좌표 변환이 일어남. (2)
    [xWyWzW]=[cosψ0sinψ010sinψ0cosψ][xSySzS] \begin{bmatrix}x_W \\y_W \\z_W \end{bmatrix} = \begin{bmatrix} cos \psi & 0 & sin \psi \\ 0 & 1 & 0 \\ -sin \psi & 0 & cos \psi \end{bmatrix} \begin{bmatrix}x_S\\ y_S\\z_S \end{bmatrix}
    • θ\theta는 좌표 V가 좌표 W로 각도가 회전되었음
    • ψ \psi은 좌표 W에서 S로 회전되었음
  • 식 2에서 1을 빼면 좌표 V에서 S로의 좌표변환은 다음과 같음 (3)
    [xVyVzV]=[cosψ0sinψsinθsinψcosθsinθcosψcosθsinψsinθcosθcosψ][xSySzS] \begin{bmatrix}x_V \\y_V \\z_V\end{bmatrix} = \begin{bmatrix} cos \psi & 0 & sin \psi \\ sin \theta sin \psi & cos \theta & -sin \theta cos \psi \\ -cos \theta sin \psi & sin \theta & cos \theta cos \psi \end{bmatrix} \begin{bmatrix}x_S\\ y_S\\z_S \end{bmatrix}

캠버 각도 검사와 오류 분석

  • 로컬 중력은 가속도계의 가속도에 의해 감지 될뿐임
  • 캠버 각도 측정 중 차량이 수평 플랫폼에서 안정적일 때 좌표 V의 z축에 따라서 있음,

    (즉 a=gkv\vec{a} = g \vec{k}v 일 때 )

  • 가속도계는 가속도 a=axis+ayjS+azkS\vec{a} = a_x\vec{i}_s + a_y\vec{j}_S + a_z\vec{k}_S를 획득할 수 있음
    • 여기서 ax, ay, az는 각각 좌표 S의 x, y, z 성분의 가속도
    (00g)V=(axayaz)S\left(\begin{array}{c}0\\ 0 \\ g \end{array}\right)_V = \left(\begin{array}{c} a_x\\ a_y \\ a_z \end{array}\right)_S
    • 식 3의 ψ\psi는 (4)
    ψ=tan1axaz\psi = -tan^{-1}\frac{a_x}{a_z}
    • 그리고 (5)
    θ=tan1ayazcosψaxsinψ\theta = tan^{-1} \frac{a_y}{a_z cos \psi -a_x sin \psi}
    • 식 4를 5에 대입하면 다음과 같이 됨
    θ=tan1ayax2+az2\theta = tan^{-1} \frac{a_y}{\sqrt{a^2_x + a^2_z}}
    • 제안된 접근방식에서 캠버각도 측정은 좌표 S와 좌표 W 사이의 misaligned 각도 ψ\psi와 무관함
    • 또한 misaligned 된 각도는 식 (4)로부터 평가할 수 있음
    • 바퀴의 캠버각도 θ\theta는 가속도계에서 감지된 가속도가 준비되어 있음
      • 식 (6)에서 좌표 S와 W의 X축이 완전히 같은 방향으로 정렬되어 있는지의 여부를 직업 판단할 수 있음.

캠버 검사 시스템과 가속도계 사이의 오정렬된 축에 대한 보정

  • 캠버 검사 시스템과 가속도계사이의 오정렬된 축은 보통 MCU기반 캠버 검사 시스템에 관해서 발생함
  • 오정렬은 캠버 각도 검사의 정밀도를 악화시킴
    • 오정렬에 대한 교정은 필수적임!
  • xk,ix_{k, i} yk,iy_{k, i}, zk,iz_{k, i}는 가속도계에서 측정된 값을 나타냄
    • k는 x, y, z일 수 있으며, 시스템의 k축 보정에 대한 인덱스임
    • i는 1~N까지의 범위를 가지면서 i번째 set data의 인덱스임
    • N은 측정데이터의 총 수
    • xk\vec{x_k}, yk\vec{y_k}, zk\vec{z_k}는 평균 중력에 의해 제약된 최소제곱성능을 갖는 N데이터의 xk,ix_{k, i}, yk,iy_{k, i}, zk,iz_{k, i}각각에 대한 최적 추정값을 나타냄
  • 성능지수 (7)
J=i=1N(xkxk,i)2+i=1N(ykyk,i)2+i=1N(zkzk,i)2J = \sum^{N}_{i=1}(\overline{x}_k - x_{k, i})^2 + \sum^{N}_{i=1}(\overline{y}_k - y_{k, i})^2 + \sum^{N}_{i=1}(\overline{z}_k - z_{k, i})^2
  • 평균 중력 제약조건 (8)
g(xk,yk,zk)=xk2+yk2+zk2(i=1Nxk,i2+yk,i2+zk,i2)2N2=0g(\overline{x}_k,\overline{y}_k,\overline{z}_k) = \overline{x}^2_k+\overline{y}^2_k+\overline{z}^2_k - \frac{(\sum^{N}_{i=1}\sqrt{x^2_{k,i}+y^2_{k,i}+z^2_{k,i}})^2}{N^2} = 0
  • 식 7, 8은 제약조건이 있는 최적화 문제. 라그랑주(Lagrange) 함수는 다음과 같음.(9)
L(xk,yk,zk+λk)=i=1N(xkxk,i)2+i=1N(ykyk,i)2+i=1N(zkxz,i)2+λk(xk2+yk2+zk2(i=1Nxk,i2+yk,i2+zk,i2)2N2)L(\overline{x}_k, \overline{y}_k, \overline{z}_k + \overline{\lambda}_k) = \sum^{N}_{i=1}(\overline{x}_k - x_{k, i})^2 + \sum^{N}_{i=1}(\overline{y}_k - y_{k, i})^2 + \sum^{N}_{i=1}(\overline{z}_k - x_{z, i})^2 + \lambda_k(\overline{x}^2_k+\overline{y}^2_k+\overline{z}^2_k - \frac{(\sum^{N}_{i=1}\sqrt{x^2_{k,i}+y^2_{k,i}+z^2_{k,i}})^2}{N^2})
  • λk\lambda_k는 라그랑주 승수 . Lxk=0,Lyk=0,Lzk=0,Lλk=0\frac{\partial L}{\partial \overline{x}_k} = 0, \frac{\partial L}{\partial \overline{y}_k} = 0, \frac{\partial L}{\partial \overline{z}_k} = 0, \frac{\partial L}{\partial \overline{\lambda}_k} = 0은 (9)번식의 최적 조건 (10),(11),(12)
    xk=i=0Nxk,iN+λk\overline{x}_k = \frac{\sum^{N}_{i=0}x_{k,i}}{N+\lambda_k}
yk=i=0Nyk,iN+λk\overline{y}_k = \frac{\sum^{N}_{i=0}y_{k,i}}{N+\lambda_k}
zk=i=0Nzk,iN+λk\overline{z}_k = \frac{\sum^{N}_{i=0}z_{k,i}}{N+\lambda_k}
  • 10~12번을 8번식에 대입한 경우 (13)
λk=N((i=1Nxk,i)2+i=1Nyk,i)2+i=1Nzk,i)2i=1Nxk,i2+yk,i2+zk,i21)\lambda_k= N(\frac{\sqrt{(\sum^{N}_{i=1}x_{k,i})^2+\sum^{N}_{i=1}y_{k,i})^2+\sum^{N}_{i=1}z_{k,i})^2}}{\sum^{N}_{i=1} \sqrt{x^2_{k,i}+y^2_{k,i}+z^2_{k,i}}}-1)
  • 13번 식에 따라 (14), (15), (16)
    xk=i=1Nxk,iNi=1Nxk,i2+yk,i2+zk,i2(i=1Nxk,i)2+(i=1Nyk,i)2+(i=1Nzk,i)2\overline{x}_k = \frac{\sum^{N}_{i=1}x_{k,i}}{N} \frac{\sum^{N}_{i=1} \sqrt{x^{2}_{k,i}+y^{2}_{k,i}+z^{2}_{k,i}}}{\sqrt{(\sum^{N}_{i=1}x_{k,i})^2+(\sum^{N}_{i=1}y_{k,i})^2+(\sum^{N}_{i=1}z_{k,i})^2}}
    yk=i=1Nyk,iNi=1Nxk,i2+yk,i2+zk,i2(i=1Nxk,i)2+(i=1Nyk,i)2+(i=1Nzk,i)2\overline{y}_k = \frac{\sum^{N}_{i=1}y_{k,i}}{N} \frac{\sum^{N}_{i=1} \sqrt{x^{2}_{k,i}+y^{2}_{k,i}+z^{2}_{k,i}}}{\sqrt{(\sum^{N}_{i=1}x_{k,i})^2+(\sum^{N}_{i=1}y_{k,i})^2+(\sum^{N}_{i=1}z_{k,i})^2}}
    zk=i=1Nzk,iNi=1Nxk,i2+yk,i2+zk,i2(i=1Nxk,i)2+(i=1Nyk,i)2+(i=1Nzk,i)2\overline{z}_k = \frac{\sum^{N}_{i=1}z_{k,i}}{N} \frac{\sum^{N}_{i=1} \sqrt{x^{2}_{k,i}+y^{2}_{k,i}+z^{2}_{k,i}}}{\sqrt{(\sum^{N}_{i=1}x_{k,i})^2+(\sum^{N}_{i=1}y_{k,i})^2+(\sum^{N}_{i=1}z_{k,i})^2}}
    • 예를 들어 캠버 검사 시스템의 x축 보정 시 그림4와 같이 시스템이 수직면에 기대어 있는 동안 x축은 수직으로 지면을 향함. 가속도계에서 3축 가속도 측정 데이터를 순차적으로 수집할 수 있음. (17)
      (100)s=(xxyxzx)A\left(\begin{array}{c}1 \\ 0 \\0 \end{array}\right)_s = \left(\begin{array}{c} x_x\\ y_x \\ z_x\end{array}\right)_A
      • A는 xx=xxxx2+yx2+zx2x_x = \frac{\overline{x}_x}{\sqrt{\overline{x}^2_x+\overline{y}^2_x+\overline{z}^2_x}}, yx=yxxx2+yx2+zx2y_x = \frac{\overline{y}_x}{\sqrt{\overline{x}^2_x+\overline{y}^2_x+\overline{z}^2_x}} , zx=zxxx2+yx2+zx2z_x = \frac{\overline{z}_x}{\sqrt{\overline{x}^2_x+\overline{y}^2_x+\overline{z}^2_x}}일때 좌표 A의 가속도계
      • 시스템의 z축 조정은 다음과 같은 순서로 진행됨 (18)
      (001)s=(xxyxzx)A\left(\begin{array}{c}0 \\ 0 \\1 \end{array}\right)_s = \left(\begin{array}{c} x_x\\ y_x \\ z_x\end{array}\right)_A
      • vertical 평면에서의 x축과 z축은 캠버 검사 시스템의 back plane을 위해 조정 될 수 있음.
      • x축과 ,z축이 충족되면, 17번 식과 18번 식으로부터 내적연산 결과(xxxz+yxyz+zxzz=0x_xx_z + y_xy_z + z_xz_z = 0)
      (010)s=(xyyyzy)A\left(\begin{array}{c}0\\ 1\\0 \end{array}\right)_s = \left(\begin{array}{c}x_y\\y_y \\z_y \end{array}\right)_A
      • 여기서 (xy,yy,zy)AT=(xz,yz,zz)AT×(xx,yx,zx)ATx_y, y_y, z_y)^T_A = (x_z, y_z, z_z)^T_A \times (x_x, y_x, z_x)^T_A . 결과적으로
      (axayaz)S=(axaayaazab)A\left(\begin{array}{c} a_x \\ a_y \\ a_z \end{array}\right)_S = \left(\begin{array}{c}a_x^a\\a^a_y \\ a^a_z b\end{array}\right)_A
      • 그 후 (19)
      [axayaz]=[xxxyxzyxyyyzzxzyzz]1[axaayaaza]\begin{bmatrix}a_x \\ a_y \\ a_z \end{bmatrix} = \begin{bmatrix}x_x &x_y &x_z \\ y_x & y_y &y_z \\ z_x & z_y &z_z \end{bmatrix}^{-1}\begin{bmatrix}a^a_x \\ a^a_y \\ a^a_z \end{bmatrix}
    • 즉, 캠버 검사 시스템의 해당 가속도로 변환될 수 있는 axa,aya,azaa^a_x, a^a_y, a^a_z가 가속도에서 측정된 데이터.
      • 따라서 정밀한 보정을 통해 시스템과 가속도계 축의 misaligned를 제거할 수 있음.
      • 또한 캠버각은 식 19로 변환된 가속도계 좌표에 의한 원시 측정 데이터로 식 6으로부터 측정될 수 있음.

에러분석 측정

  • 식 (6)에서 캠버각도 dθd\theta의 미분은 다음과 같이 계산됨 (20)
dθ=1ax2+ay2+az2(sinθsinψdax+cosθdaysinθcosψdaz)d\theta = \frac{1}{\sqrt{a^2_x + a^2_y + a^2_z}}(-sin \theta sin \psi da_x + cos\theta da_y - sin \theta cos \psi da_z)
  • dax,day,dazda_x, da_y, da_z 는 각각 x, y, z축의 간격임.
  • 캠버 검사 시스템에서 감지된 가속도는 로컬 중력(1g)과 같음.
ax2+ay2+az2g2a^2_x + a^2_y + a^2_z \cong g^2
  • 식 (20)은 다음과 같이 변환됨 (21)
dθ1g(sinθsinψdax+cosθdaysinθcosψdaz)d\theta \cong \frac{1}{g} (-sin\theta sin \psi da_x + cos\theta da_y - sin\theta cos \psi da_z)
  • (21)식에서 오른쪽 식의 부호가 모두 +인 악조건에서 방정식 (21)은 다음과 같이 표현함 (22)
dθ1g(sinθsinψdax+cosθday+sinθcosψdaz)|d\theta | \cong \frac{1}{g} (|sin\theta sin \psi da_x | +| cos\theta da_y|+ | sin\theta cos \psi da_z|)
  • 식(22)는 camber측정의 오류가 모든 가속도 축의 간격에 높게 의존함을 설명함.
  • 식(22)의 악조건에서의 최소 측정 에러는 θ=0\theta = 0일때 dayda_y와 중력의 비율과 같음 (23)
mindθθψ=dayg\underset{\theta \psi}{min|d\theta|} = \frac{|da_y|}{g}
  • 일반적으로 가속도계의 3축 간격은 동일하지 않음
  • 식 (23)은 측정 오류를 줄이기 위해 가속도계의 최선의 간격 축이 좌표 S의 y축에 가깝게 정렬되어야함을 의미하는것으로 해석 가능함.
  • 식 (22)의 측정오차는 캠버 각도 및 오정렬 또는 좌표 V에 대한 좌표의 attitude에 따라 달라짐.
    • 식 (22)를 기반으로 그림 5는 가속도 측정의 악조건 상태인 dax=day=daz=±4mgda_x = da_y = da_z = \pm 4mg(4mg는 가속도계의 감도임)의 경우 θ\thetaψ\psi의 차이의 캠버각도 측정 오류를 그림
    • 방정식 (23)에서 θ=0\theta = 0일때 최소 측정 오차는 0.2292∘
    • 캠버각도는 θ0\theta \cong 0 일때 0 근처임

Comments