Player walks true objects C#

Hey,

My player somehow is going true objects with a collider but not true the ground.
My player has a collider attached to him.

all Help is appreciated!!

using UnityEngine;
using System.Collections;

public class Player_Movement : MonoBehaviour {

    public float WalkSpeed = 5.0F;
    private float Walk_Speed;
    public float JumpHeight = 5.0F;
    private bool Grounded = true;

    [Header("Speeds")]
    public float FlySpeed = 20;
    public float Forward = 20;
    public float Runspeed = 10;
    public float JumpSpeed;


    [Header("Keycode")]
    public KeyCode Jump;
    public KeyCode Forward_W;
    public KeyCode Run;
    public KeyCode FlyKey;

    [Header("Objects")]
    public Rigidbody rb;

    void Start()
    {
        Walk_Speed = WalkSpeed;
        rb = GetComponent<Rigidbody>();
    }


    void Update()
    {
        //---------------------------------------------------------------------
        //Jump
        if (Grounded == true)
        {
            if (Input.GetKeyDown(Jump))
            {
                rb.velocity = new Vector3(0, JumpHeight, 0);
                rb.AddForce(0, JumpSpeed, 0);
            }
        }
        //---------------------------------------------------------------------
        //Walk
        float translation = Input.GetAxis("Vertical") * Walk_Speed;
        float straffe = Input.GetAxis("Horizontal") * Walk_Speed;
        translation *= Time.deltaTime;
        straffe *= Time.deltaTime;

        transform.Translate(straffe, 0, translation);
        //---------------------------------------------------------------------
        //Fly
        if (Input.GetKey(FlyKey))
        {
            rb.velocity = new Vector3(0, FlySpeed, 0);
        }
        //---------------------------------------------------------------------
        //Runing
        if (Input.GetKey(Forward_W) && Input.GetKey(Run))
        {
            Walk_Speed = Runspeed;
        }
        else
        {
            Walk_Speed = WalkSpeed;
        }
        //---------------------------------------------------------------------
    }
    void OnCollisionExit(Collision collisionInfo)
    {
        Grounded = false;
    }

    void OnCollisionEnter(Collision collisionInfo)
    {
        Grounded = true;
    }

    public void ChangeRunSpeed(float Run)
    {
        Run = Runspeed;
    }

    public void ChangeWalkSpeed(float Walk)
    {
        Walk = Walk_Speed;
    }

    public void ChangeJumpHeight(float JumpHeightfloat)
    {
        JumpHeightfloat = JumpHeight;
    }
}

does the object what the player is colliding in has a collider too?

yes, it has

And the collider is also not set as Trigger?
No mixing of 2D/3D colliders or Rigidbodies?

Can you post the collider settings of the object and the player? I suppose the problem has to be in the physics part, rather than in the movement script.

Here are some screens of the player object!
2859207--209149--player.PNG 2859207--209150--player2.PNG

verander capsule collider naar mesh collider en kruis de box met convex aan in de mesh collider

Imgur