I don't know about Iowa but in North Carolina all that is needed is fear of imminent death, grave bodily injury or sexual assault. If a guy pulls a knife and says "give me your money" you can respond with lethal force. you don't have to wait for the knife to be in your belly to shoot. Assault is not necessary to justify lethal force. Actually some levels of assault are not allowed to be met with lethal force.
In actuality a firearm and the carrying thereof is a very very small part of protecting yourself and those you love. Choosing a safe neighborhood, safe car, practicing avoidance, etc, are far more likely to protect yourself and your loved one than a gun. The only time a firearm comes into the picture MAY be in the even of a violent assault and even then the outcome will be determined on a lot of things.