In this paper, a novel design of an energy regeneration system was proposed for recovering as well as reusing potential energy in a boom cylinder. The proposed system included a hydraulic pump/motor and an electrical motor/generator. When the boom moved down, the energy regeneration components converted the hydraulic energy to electrical energy and stored in a battery. Then, the regenerated energy was reused at subsequent cycles. In addition, an energy management strategy has been designed based on discrete time-optimal control to guarantee position tracking performance and ensure component safety during the operation. To verify the effectiveness of the proposed system, a co-simulation (using MATLAB and AMESim) was carried out. Through the simulation results, the maximum energy regeneration efficiency could achieve up to 44%. Besides, the velocity and position of the boom cylinder achieved good performance with the proposed control strategy.