roboforum.ruТехнический форум по робототехнике. |
|
|
Duhas писал(а):на счет боится статики.. для таких девайсов, имхо, вполне актуально.. это не МК довольно деревянный... т.е. при работе полезны всякие ESD сэйф паяльники и тд.. у меня как оказалось паяльник от станции не дружит с землей осцила.... хз сколько там вольт - не мерил.. но мегу я так сжег ) ну или покоцал - тоже не изучал особо последствия..
inline float calculate_servo0_position(float z_coord, float az_coord)
{
const float x = az_coord * 1.24556040763854980000f + 0.50000000000000000000f;
const float x_1 = x, x_2 = x * x_1, x_3 = x * x_2;
const float y = z_coord * 0.01351351384073495900f + -0.64864861965179443000f;
const float y_1 = y, y_2 = y * y_1, y_3 = y * y_2;
return (-0.30742821097373962000f + -1.21247673034667970000f * y_1 + 0.80889540910720825000f * y_2 + -0.75817310810089111000f * y_3) +
x_1 * (1.22287416458129880000f + 2.14566111564636230000f * y_1 + -5.42543697357177730000f * y_2 + 4.22106027603149410000f * y_3) +
x_2 * (0.60016727447509766000f + -5.94708108901977540000f * y_1 + 14.01125717163085900000f * y_2 + -9.62817096710205080000f * y_3) +
x_3 * (0.16122572124004364000f + 3.06335139274597170000f * y_1 + -8.72798919677734370000f * y_2 + 6.08712720870971680000f * y_3);
}
inline float calculate_servo1_position(float z_coord, float az_coord)
{
const float x = az_coord * 1.24556040763854980000f + 0.50000000000000000000f;
const float x_1 = x, x_2 = x * x_1, x_3 = x * x_2;
const float y = z_coord * 0.01351351384073495900f + -0.64864861965179443000f;
const float y_1 = y, y_2 = y * y_1, y_3 = y * y_2;
return (-1.67683899402618410000f + 1.95054543018341060000f * y_1 + -0.66672599315643311000f * y_2 + 0.07815618067979812600f * y_3) +
x_1 * (2.90688586235046390000f + -0.55844748020172119000f * y_1 + -3.58689117431640620000f * y_2 + 3.22610092163085940000f * y_3) +
x_2 * (-1.08384442329406740000f + -3.24297237396240230000f * y_1 + 12.17271041870117200000f * y_2 + -8.63321113586425780000f * y_3) +
x_3 * (0.16122573614120483000f + 3.06335115432739260000f * y_1 + -8.72798919677734370000f * y_2 + 6.08712720870971680000f * y_3);
}
void set_position(float z_coord, float az_coord)
{
m_az_coord = az_coord;
m_z_coord = z_coord;
m_servo0.set_position(paws::calculate_servo0_position(m_z_coord, m_az_coord));
m_servo1.set_position(paws::calculate_servo1_position(m_z_coord, m_az_coord));
}
cupuyc - Ты движения в какойто софте моделировал или все на черновике вручную прикидывал?
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 23