Each Cot can have a single assigned Duplicant, and that Duplicant will try to return to that Cot each night. Duplicants will assign themselves to empty Cots if they don't currently have one at nightfall.
Each Duplicant can only be assigned to one Cot. They can be unassigned or change to another Cot.
Building a Cot for a Duplicant sleeping on the ground won't make it immediately go to bed, manually assigning will.
Marking a deconstruct command on the cot being used wake its owner Duplicant up instantly. But the Duplicant will just come back to sleep again.