Collisions don't work properly

I have such scene:

alt text

I move platform with this code:

float xMovement = xAxis * Time.deltaTime * 20;
float yMovement = 0;
float zMovement = yAxis * Time.deltaTime * 20;
transform.Translate(xMovement, yMovement, zMovement);

When I move it not so fast, it works properly, but when it moves faster - the box falls through the walls and falls down.
The properties of box and walls are these:

alt text

alt text

Transform.Translate doesn’t really care about collisions. If you are lucky, and the translation is small enough that it doesn’t go all the way through your collider, the rigidbody will push the object back out in the next FixedUpdate, but otherwise collisions won’t be detected at all.

You should be using

rigidbody.MovePosition(transform.position + movement);

or, better still, use rigidbody.AddForce() to simulate actual physical movement. For platforms rigidbody.MovePosition should work- but make sure that you do it in the FixedUpdate step.