private async Task LogInIotHub()
        {
            TypeJson command_json = new TypeJson();

            if (NowNetSta == false)
            {
                return;
            }
            if (IotHubConnectFlag == false)
            {
                return;
            }

            if (TeamName == null)
            {
                Debug.WriteLine("Please don't let your teamname void when you call methods 'new IotHubLocalService(xx,xx,xx)'");
                await Task.Delay(TimeSpan.FromSeconds(4));
            }
            else
            {
                if (LoginF == false)
                {
                    try
                    {
                        Debug.WriteLine("Start to log in\r\n");

                        LoginInJson login_msg = new LoginInJson();
                        login_msg.deviceId = BoardId;
                        login_msg.name     = TeamName;

                        var messageString = JsonConvert.SerializeObject(login_msg);
                        command_json.Type    = 1;
                        command_json.Command = messageString;
                        messageString        = JsonConvert.SerializeObject(command_json);
                        var          message = new Message(Encoding.ASCII.GetBytes(messageString));
                        IAsyncAction Action  = deviceClient.SendEventAsync(message);
                        await        Action;
                        if (Action.Status == AsyncStatus.Completed)
                        {
                            Debug.WriteLine("Log in Success");
                            LoginF = true;
                        }
                        else
                        {
                            Debug.WriteLine("Log in Fail");
                            await Task.Delay(TimeSpan.FromSeconds(10));
                        }
                    }
                    catch (Exception ex)
                    {
                        Debug.WriteLine("Login iot hub fail,please check your teamname and internet" + ex.Message);
                        await Task.Delay(TimeSpan.FromSeconds(10));
                    }
                }
            }
        }
        private async Task SendModelDataToIot()
        {
            TypeJson command_json = new TypeJson();

            if (NowNetSta == false)
            {
                return;
            }
            if (IotHubConnectFlag == false)
            {
                return;
            }

            if (LoginF == true)
            {
                if (EnableTransfer == 1)
                {
                    if (CheckTimerStrikeSecond(SendRunDataDelay, 5))
                    {
                        SendRunDataDelay = DateTime.Now;

                        try
                        {
                            SendMotorRunStatusJson car_run_msg = new SendMotorRunStatusJson();
                            car_run_msg.deviceId    = BoardId;
                            car_run_msg.RunTime     = Motor.RunTime;
                            car_run_msg.RunDistance = Motor.RunDistance;

                            var messageString = JsonConvert.SerializeObject(car_run_msg);
                            command_json.Type    = 6;
                            command_json.Command = messageString;
                            messageString        = JsonConvert.SerializeObject(command_json);
                            var message = new Message(Encoding.ASCII.GetBytes(messageString));
                            await deviceClient.SendEventAsync(message);

                            Debug.WriteLine("Send car run data ={1}", 1, messageString);
                        }
                        catch (Exception ex)
                        {
                            Debug.WriteLine("Send Run Data error" + ex.Message);
                        }
                    }
                }
            }
            else
            {
                await Task.Delay(TimeSpan.FromMilliseconds(30));
            }
        }