Text this: A greedy assist-as-needed controller for end-effect upper limb rehabilitation robot based on 3-DOF potential field constraints