added pid controller