An inhaler is provided that includes a controller, a driver, an atomizer and one or more sensors for detecting information about a velocity of inhalation of a user of the inhaler. The controller is configured to dispense an inhalant from the inhaler during an inhalation of the user based on information about the velocity of inhalation of the user. Such information can include a duration of maximum inhalation velocity or an increase or maximum in the acceleration in inhalation velocity. Embodiments of the inhaler can be used to enhance the delivery of drugs and therapeutic agents for those patients having a weakened respiratory system who are unable to take a deep or full breadth, e.g., patients having asthma or COPD. Embodiments of the inhaler can be used to deliver a variety of drugs and therapeutic agents including agents for the treatment of asthma, diabetes, epilepsy and heart disease.