ここで質問するのが初めてなのでミスやわかりにくい部分などあったらすみません。

今Unity5.4.3を使用していて、scriptでアニメーションを作成しています。
流れとしては、Arduinoのセンサから値を読み取る→値の計算をする→動かす物体Aの現在地を読み取る→計算した値の分だけAを動かす→描画する
というような感じです。

センサの値を読み取るのと値の計算までは確実にできていることを確認しました(一行ずつ確かめました)が、次のAの現在地を読み取ることができません。
Vector3の型がMonodevelop上で存在しないといわれていたり、Aの認識ができていない可能性などがあるのですが、どう確かめるのか、実際に何が原因かがわからないままで困っています、どなたか力を貸していただけないでしょうか。

以下プログラムを一部抜粋したものです。

public Vector3 poshand;
void Start () {
    poshand = new Vector3 ();
}

void Update () {
    progresstime += Time.deltaTime;
    if(progresstime >= 0.25){
        portRead();
        progresstime = 0f;
    }
}

public void portRead(){
    if(port1 != null && port1.IsOpen) {
        //このあたりにArduinoのセンサー読み取りと値の計算(長いので省略
       try{
            handmoves(myData_proxsensor);
        }catch(System.Exception e){
            textobj.GetComponent<UnityEngine.UI.Text> ().text = "Verror";
        }
    }
}
  public void handmoves(int ard_parameter){
    poshand = shakeshand.transform.position;//ここでエラー
    poshand.x -= ard_parameter/5;
    shakeshand.transform.position = poshand;//ここでエラー
  }