I am not sure, if this is the right way, but i would try to create the arm as a curve, and those parts could be via array and curve modifier put on that curve with “fit length” option. It is just firs idea, so it could be wrong…
i created this example (it was quick, so nothing fancy): https://drive.google.com/open?id=1oXl5DAuS4it7nhs0SocdfDbKdnFd0Ww6
just select the bezier curve and try to move it