Animating bellows

Hi everyone,

I’m very new to blender, and so far I learned mostly about the modeling part of blender. For a school project, I wanted to show tilts on a large format camera, like this one. My issue is when trying to animate the bellows : it’s not very smooth. So far, I used weight paint, which gave me those results.
Do you have any advice on how to smooth or make a sort of gradient with weight paint ? Or is there another way to animate bellows ?

There is this old thread:

Here is a simple key frame animation+Array modifier.
Accordion.blend (560.2 KB)

Thank you ! Although a simple stretching animation isn’t my main concern. I found a solution with bendy bones that works very smoothly.