An approach is proposed for modeling and scheduling batch production systems based on Petri nets. First, a group of jobs to be carried out by a batch production system is modeled by a transitiontimed Petri net according to logical relations between operations and time requirements on operations. Second, conflict relations between operations are obtained by operation-resource diagrams that describe how operations compete for resources, and are formally expressed by linear constraints. Third, monitor places are designed to enforce linear constraints on the transition-timed Petri net, and a plant net is consequently built and made free of conflicts between operations, which can well emulate a real batch production system. Fourth, an optimal schedule problem, where the optimization performance index is to minimize a makespan, is formalized based on a plant net. Finally, a new variant of filtered beam search method is proposed to solve the problem based on an ad hoc function and a dynamical timed extended reachability graph of a plant net. A typical chemical production plant illustrates the theoretic results.