Sic.Framework-Nanjing-Baishi/MECF.Framework.RT.Equipment.../HardwareUnits/Robots/RobotBase/IRobot.cs

52 lines
1.4 KiB
C#

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace MECF.Framework.RT.EquipmentLibrary.HardwareUnits.Robots
{
public interface IRobot
{
RobotStateEnum RobotState { get; }
RobotArmWaferStateEnum GetWaferState(RobotArmEnum arm);
string[] GetStationsInUse();
bool Home(object[] param);
//-------------------------------------------------------------------------
// Single arm operations
bool ApproachForPick(RobotArmEnum arm, string station, int slot);
bool ApproachForPlace(RobotArmEnum arm, string station, int slot);
bool Pick(RobotArmEnum arm, string station, int slot);
bool Place(RobotArmEnum arm, string station, int slot);
bool Swap(RobotArmEnum pickArm, string station, int slot);
bool Transfer(RobotArmEnum arm, string sourceStation, int sourceSlot, string destStation, int destSlot);
//-------------------------------------------------------------------------
// Dual arm operations
bool DualPick(string station, int lowerSlot);
bool DualPlace(string station, int lowerSlot);
bool DualSwap(string station, int lowerSlotPlaceTo, int lowerSlotPickFrom);
bool DualTransfer(string sourceStation, int sourceLowerSlot, string destStation, int destLowerSlot);
}
}