Added serial link to SSC32
This commit is contained in:
@@ -26,6 +26,8 @@ public class Leg : MonoBehaviour {
|
||||
public GameObject pointShouldBe;
|
||||
public Vector3 pos = new Vector3(0, 0, 0);
|
||||
|
||||
public int startServo = -1;
|
||||
|
||||
private Foot foot = new Foot();
|
||||
|
||||
// Use this for initialization
|
||||
@@ -71,10 +73,34 @@ public class Leg : MonoBehaviour {
|
||||
a3 = foot.O3 - 90;
|
||||
}
|
||||
|
||||
if (!invert && startServo != -1)
|
||||
{
|
||||
Serial.Instance.send(startServo,
|
||||
(int)Remap((float)a1, -90, 90, 2500, 500),
|
||||
(int)Remap((float)a2, -90, 90, 2500, 500), // 0 is middel
|
||||
(int)Remap((float)a3, 90, -90, 2500, 500)); // 0 is middel
|
||||
}
|
||||
else if (invert && startServo != -1)
|
||||
{
|
||||
double a1 = foot.O1 - 90;
|
||||
double a2 = 90 - foot.O2;
|
||||
double a3 = foot.O3 - 90;
|
||||
|
||||
Serial.Instance.send(startServo,
|
||||
(int)Remap((float)a1, -90, 90, 500, 2500),
|
||||
(int)Remap((float)a2, -90, 90, 500, 2500), // 0 is middel
|
||||
(int)Remap((float)a3, 90, -90, 500, 2500)); // 0 is middel
|
||||
}
|
||||
|
||||
Hip1.transform.localRotation = Quaternion.Euler(0, (float)a1, 0);
|
||||
Hip2.transform.localRotation = Quaternion.Euler((float)a2, 0, 0);
|
||||
Knie.transform.localRotation = Quaternion.Euler((float)a3, 0, 0);
|
||||
|
||||
pointShouldBe.transform.localPosition = foot.pos;
|
||||
}
|
||||
|
||||
public static float Remap(float value, float from1, float to1, float from2, float to2)
|
||||
{
|
||||
return (value - from1) / (to1 - from1) * (to2 - from2) + from2;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user