Why does my train not move correctly when I tween it?

I am trying to use tween service to move my train but it doesn’t move it correctly. It doesn’t get to the set destination but instead moves a little, then gets lifted into the air and flips on its side, and falls all while not moving forward at all. Is there a way to fix this?

Script:

local TweenService = game:GetService("TweenService")

local part = script.Parent


local point = {}
point.Position = Vector3.new(150.293, 0.5, -224.694)

local tweenInfo = TweenInfo.new(10, Enum.EasingStyle.Linear)

local tween = TweenService:Create(part, tweenInfo, point)

tween:Play()

Usually, you need the handle of the tween to be anchored while all its welded parts are unanchored.

Make sure that this is the case.

I just did this but it didn’t seem to do anything as it still has the same problem.

Are you using Weld or WeldConstraint?

If you are using WeldConstraint, all objects HAVE to be in the workspace when you move the CFrame (Not position!) of the handle, otherwise it won’t work.

I’m using welds for the train.