A washing machine, comprising: a rotary tub; a motor linked to the rotary tub to be supplied with drive power and rotating to rotate the rotary tub, a vibration detector operable to detect a vibration level of the rotary tub during a rotation of the rotary tub using a variation of the drive power supplied to the motor when the motor rotates; and a controller operable to control a current rotational speed of the motor to be increased, maintained or decreased according to the vibration level of the rotary tub detected by the vibration detector, to attenuate the vibration level of the rotary tub, characterised in that the variation of the drive power supplied to the motor corresponds to a plurality of different reference ranges which determine the vibration level of the rotary tub, and wherein the plurality of different ranges include: a first reference range where the variation (ΔM2) of the drive power is lower than a first reference value whereby the rotational speed of the motor is increased; a second reference range where the variation (ΔM2) of the drive power is higher than the first reference value and is lower than a second reference value (C2') whereby the rotational speed of the motor is maintained; and a third reference range where the variation (ΔM2) of the drive power is higher than the second reference value (C2') whereby the rotational speed of the motor is decreased. a rotary tub; a motor linked to the rotary tub to be supplied with drive power and rotating to rotate the rotary tub, a vibration detector operable to detect a vibration level of the rotary tub during a rotation of the rotary tub using a variation of the drive power supplied to the motor when the motor rotates; and a controller operable to control a current rotational speed of the motor to be increased, maintained or decreased according to the vibration level of the rotary tub detected by the vibration detector, to attenuate the vibration level of the rotary tub, characterised in that the variation of the drive power supplied to the motor corresponds to a plurality of different reference ranges which determine the vibration level of the rotary tub, and wherein the plurality of different ranges include: a first reference range where the variation (ΔM2) of the drive power is lower than a first reference value whereby the rotational speed of the motor is increased; a second reference range where the variation (ΔM2) of the drive power is higher than the first reference value and is lower than a second reference value (C2') whereby the rotational speed of the motor is maintained; and a third reference range where the variation (ΔM2) of the drive power is higher than the second reference value (C2') whereby the rotational speed of the motor is decreased. a first reference range where the variation (ΔM2) of the drive power is lower than a first reference value whereby the rotational speed of the motor is increased; a second reference range where the variation (ΔM2) of the drive power is higher than the first reference value and is lower than a second reference value (C2') whereby the rotational speed of the motor is maintained; and a third reference range where the variation (ΔM2) of the drive power is higher than the second reference value (C2') whereby the rotational speed of the motor is decreased.