コード例 #1
0
ファイル: Form1.cs プロジェクト: RobAmos/osla
        private void Never_Call_initializeTwisterPositions()
        {
            ListOfSpots = new List<Twister.TwisterPosition>();
            //These positions will change in the new location, you can find them by using the twister software from caliper
            //that software trains a position, and by typing them here you are a-ok, trying to get them programmatically was a pain
            ReaderSafe = new Twister.TwisterPosition("Reader Safe", "Absolute", 2955, -1938, 76960, 137482, 80);
            ListOfSpots.Add(ReaderSafe);
            ReaderOverPlate = new Twister.TwisterPosition("Reader Clearance", "Absolute", 2825, 97301, 76954, 137781, 60);
            ListOfSpots.Add(ReaderOverPlate);
            ReaderPlate = new Twister.TwisterPosition("Reader Place", "Absolute", -86579, 97301, 76954, 137781, 15);
            ListOfSpots.Add(ReaderPlate);
            //now for the incubator, actually the process incubator in Clara
            IncubatorSafe = new Twister.TwisterPosition("Incubator Safe", "Absolute", 2818, -1938, 118087, -23783, 80);
            ListOfSpots.Add(IncubatorSafe);
            IncubatorOverPlate = new Twister.TwisterPosition("Incubator Clearance", "Absolute", 2825, 84559, 117459, -21274,60);
            ListOfSpots.Add(IncubatorOverPlate);
            //IncubatorOverPlate = new TwisterPosition("PlaceClearance1", "Absolute", 2825, 85560, 117905, -21274, 60);
            IncubatorPlate = new Twister.TwisterPosition("Incubator Place", "Absolute", -70000, 84559, 117459, -21274, 15);
            ListOfSpots.Add(IncubatorPlate);
            //IncubatorPlate = new TwisterPosition("Place1", "Absolute", -70000, 85560, 117905, -21274, 15);

            //Now for the Garbage Location
            GarbageLocation = new Twister.TwisterPosition("Garbage Safe", "Absolute", 2900, 49999, 209223, -5121, 20);
            ListOfSpots.Add(GarbageLocation);
            //Now for a safe spot
            GlobalSafe = new Twister.TwisterPosition("Global Safe", "Absolute", 2900, -5732, 179861, -5121, 45);
            ListOfSpots.Add(GlobalSafe);
            //Now to give all the coordinates of the rack positions
            RackPositions = new Twister.TwisterPosition[6, 2];
            short RackMoveSpeed = 30;
            RackPositions[0, 0] = new Twister.TwisterPosition("Rack 1 Clearance", "Absolute", 3000, -2435, 150443, -4285, RackMoveSpeed);
            RackPositions[0, 1] = new Twister.TwisterPosition("Rack 1", "Absolute", -54329, -2435, 150443, -4285, RackMoveSpeed);
            RackPositions[1, 0] = new Twister.TwisterPosition("Rack 2 Clearance", "Absolute", 3000, 61010, 176446, -4076, RackMoveSpeed);
            RackPositions[1, 1] = new Twister.TwisterPosition("Rack 2", "Absolute", -49473, 61010, 176446, -4076, RackMoveSpeed);
            RackPositions[2, 0] = new Twister.TwisterPosition("Rack 3 Clearance", "Absolute", 3000, -1582, 202995, -5644, RackMoveSpeed);
            RackPositions[2, 1] = new Twister.TwisterPosition("Rack 3", "Absolute", -54628, -1582, 202995, -5644, RackMoveSpeed);
            //fourth positions are on the other side
            RackPositions[3, 0] = new Twister.TwisterPosition("Rack 4 Clearance", "Absolute", 3000, -2939, 22129, -3137, RackMoveSpeed);
            RackPositions[3, 1] = new Twister.TwisterPosition("Rack 4", "Absolute", -54171, -2939, 22129, -3137, RackMoveSpeed);
            RackPositions[4, 0] = new Twister.TwisterPosition("Rack 5 Clearance", "Absolute", 3000, 61478, -3754, -4289, RackMoveSpeed);
            RackPositions[4, 1] = new Twister.TwisterPosition("Rack 5", "Absolute", -54361, 61478, -3754, -4289, RackMoveSpeed);
            RackPositions[5, 0] = new Twister.TwisterPosition("Rack 6 Clearance", "Absolute", 3000, -1856, -29650, -2875, RackMoveSpeed);
            RackPositions[5, 1] = new Twister.TwisterPosition("Rack 6", "Absolute", -54107, -1856, -29650, -2875, RackMoveSpeed);
            foreach (Twister.TwisterPosition pos in RackPositions)
            {
                ListOfSpots.Add(pos);
            }
            //Now for the SciClonePositions
            //Very important!!! This will hold the positions labelled 1-5, with 1 being closest
            //to the computer.  Position 1 is for the pippette tips, and so will have a special location,
            //while position 4 holdsthe shaker.
            //only position one will have the move absolute rule enforced
            //Note that the first spot is the "safe" position, and the second is the "down" position

            //also note that I am defining one "safety position" for all sciclone moves"
            ScicloneSafe = new Twister.TwisterPosition("Sci Safe", "Absolute", 2825, -1938, 274934, -23783, 30);
            ListOfSpots.Add(ScicloneSafe);

            //SciCloneSpots = new Twister.TwisterPosition[4, 2];
            //SciCloneSpots[0, 0] = new Twister.TwisterPosition("SciClone 1 Clearance", "Absolute", 2759, 210403, 239658, -93685, 20);
            //SciCloneSpots[0, 1] = new Twister.TwisterPosition("SciClone 1", "Absolute", -85132, 210403, 239658, -93685, 5);
            //SciCloneSpots[1, 0] = new Twister.TwisterPosition("SciClone 2 Clearance", "Absolute", -48051, 160782, 255749, -115764, 20);
            //SciCloneSpots[1, 1] = new Twister.TwisterPosition("SciClone 2", "Absolute", -125830, 1160782, 255749, -115764, 20);
            //SciCloneSpots[2, 0] = new Twister.TwisterPosition("SciClone 3 Clearance", "Absolute", -53682, 153407, 273898, -142338, 20);
            //SciCloneSpots[2, 1] = new Twister.TwisterPosition("SciClone 3", "Absolute", -128136, 153407, 273898, -142338, 5);
            ////Now the shaker
            //SciCloneSpots[3, 0] = new Twister.TwisterPosition("SciClone 4 Clearance", "Absolute", -48057, 192265, 290704, -166918, 20);
            //SciCloneSpots[3, 1] = new Twister.TwisterPosition("SciClone 4", "Absolute", -95143, 192265, 290704, -166918, 5);
            //foreach(Twister.TwisterPosition pos in SciCloneSpots)
            //{
            //    ListOfSpots.Add(pos);
            //}
            TwistDict = new Dictionary<string, Twister.TwisterPosition>();
            foreach (Twister.TwisterPosition pos in ListOfSpots)
            {
                lstPositions.Items.Add(pos);
                TwistDict[pos.Name]= pos;
            }
        }
コード例 #2
0
ファイル: Form1.cs プロジェクト: RobAmos/osla
 private void DeSerializeList()
 {
     TwistDict=new Dictionary<string,Twister.TwisterPosition>();
         FileStream f=new FileStream(FilePath,FileMode.Open);
         BinaryFormatter b=new BinaryFormatter();
         TwistDict = (Dictionary<string,Twister.TwisterPosition>)b.Deserialize(f);
         f.Close();
         foreach(Twister.TwisterPosition pos in TwistDict.Values)
         {
             lstPositions.Items.Add(pos);
         }
         Twister.TwisterPosition TestPos = new Twister.TwisterPosition("Test", "Absolute", 0, 0, 0, 0, 15);
         lstPositions.Items.Add(TestPos);
 }