This is HO scale (1/87) motorized OIL PUMP JACK miniature.
It has gearbox that slows down motor power through series of gear to move the counterweight.
It's powered rom wall outlet via DC adapter and uses PWM DC motor controller to manage the pump speed.
It can both printed in FDM or SLA 3D printer. But I recomend print it in SLA altogether for better result and less post processing, especially for the "samson post".
You can watch the pump in action from https://bit.ly/2NYaf6F
PS. I designed several "Horse Head" for the pump so it looks different on the actual picture