Patent ID: 8120293

Claim:
An apparatus that controls opening and closing of an open/close member based on a supply of a drive voltage, the apparatus comprising: a drive motor that is actuated to selectively open and close the open/close member; a memory that stores a count value changing in correspondence with operation of the drive motor, the memory storing the count value each time the count value changes; a storage state determining section that determines whether the count value is normally stored in the memory when a reset starting, in which the drive voltage drops to a value smaller than or equal to a predetermined level and then re-increases to a value greater than the level, occurs; a motor state detecting section that detects whether the drive motor is in operation; a position difference determining section, wherein if, in the reset starting, it is determined that the count value is normally stored and it is detected that the drive motor is in operation, the position difference determining section determines that it is likely that there is a difference between an actual open/closed position of the open/close member and the count value stored in the memory; a non-volatile memory that stores initialization information that indicates whether initial setting of the relationship between the actual open/closed position of the open/close member and the count value has been carried out; a number of reset determining section that, if it is determined that it is likely that there is a difference between the actual open/closed position of the open/close member and the count value stored in the memory, detects the number of cycles of the reset starting and determines whether the detected number of the reset starting cycles is in a predetermined acceptable range; a switching section that, if it is determined that the number of the reset starting cycles exceeds the acceptable range, switches the initialization information, in accordance with which the relative relationship between the actual open/closed position of the open/close member and the count value stored in the memory is determined, to a non-set state; and a maintaining section that, if it is determined that it is likely that there is a difference between the actual open/closed position of the open/close member and the count value stored in the memory, and if it is also determined that the number of the reset starting cycle does not exceed the acceptable range, maintains the initialization information in the set state; wherein, if the maintaining section maintains the initialization information in the set state, the number of the reset starting cycles is written in the non-volatile memory.