汉字最多笔画是什么字| 一个鸟一个木念什么| 有狐臭是什么原因| 上皮细胞是什么| 灭蚂蚁什么药最有效| 舌系带短挂什么科| 欣字取名什么寓意| 夕颜是什么意思| 印度什么教| 冠状动脉钙化是什么意思| 容易手麻脚麻是什么原因| 制氧机什么牌子好| 王字旁一个玉读什么| 血小板为0意味着什么| 有何贵干是什么意思| 白巧克力是什么做的| 丙氨酸氨基转移酶高是什么意思| 副厅长是什么级别| 大肝功能是检查什么| gopro是什么意思| 胃疼能吃什么| 古代广东叫什么| 肛塞有什么作用| 狗狗窝咳吃什么药最好| 办健康证需要检查什么| 卡罗莱手表是什么档次| 甲钴胺的副作用是什么| 抑郁症看什么科| 牙龈发炎用什么药| 洋葱什么时候种| 一氧化碳是什么| 蝗虫吃什么| 车厘子不能和什么一起吃| unicorn是什么意思| 胰腺上长瘤意味着什么| 睡觉打呼噜是什么病| 冬虫夏草长什么样| 孕妇梦到老公出轨什么意思| 乳液是什么| 榴莲什么样的好| bug是什么意思| 羽五行属什么| 女子胞指的是什么| 面粉可以做什么| 美尼尔氏综合症是什么病| 今年男宝宝取什么名字好| 手心发痒是什么原因| 肾积水是什么症状| 尿白细胞阳性是什么意思| 21金维他什么时候吃效果最好| 子宫下垂吃什么药| 考警校需要什么条件| 紫外线过敏是什么症状| 听雨是什么意思| 窦性心律不齐是什么| 日月同辉是什么意思| 血滴子是什么| 白细胞满视野是什么意思| 尿酸高什么原因引起的| 精液什么颜色| 为什么去香港还要通行证| 肾结石吃什么水果好| 宋朝前面是什么朝代| 骨折补钙吃什么钙片好| 精囊炎吃什么药最有效| 下乡插队是什么意思| 冰箱买什么牌子好| 喝最烈的酒下一句是什么| 红豆为什么代表相思| 待字闺中是什么意思| 猪展是什么| 什么是复韵母| 什么叫做绝对值| 吃皮是什么意思| 煜字五行属什么| 7.23是什么星座| 尿液有隐血是什么情况| goldlion是什么牌子| 十一月份出生的是什么星座| 降血脂吃什么| 取环是什么意思| 42是什么生肖| qr是什么意思| napoleon是什么酒| 独生子女证办理需要什么材料| 心绞痛有什么症状| 看见喜鹊有什么预兆| 谷丙转氨酶偏高是什么意思| 什么什么的太阳| 三花聚顶是什么修为| 错综复杂是什么意思| 噗呲是什么意思| 尿路感染吃什么药比较好的快| 什么是自由基| 女性阴部痒是什么原因| 痔疮是什么引起的| 一什么柳树| hpv42阳性是什么意思| 区间放量是什么意思| 女人八卦是什么意思| 洗衣机启动不了是什么原因| 血糖30多有什么危险| 盐和小苏打一起有什么作用| 淋巴发炎吃什么药| 字母哥什么位置| 血脂高看什么科| 蒜气是什么病| 孕妇用什么驱蚊最安全| 更年期燥热吃什么食物| 栋梁之材是什么意思| 飨宴是什么意思| 神经衰弱挂什么科| 庄子是什么学派| 长期戴耳机有什么危害| 碳14阴性是什么意思| 海里有什么鱼| 孕妇的尿液有什么用途| 什么是潮热| 嘴唇发紫是什么原因引起的| 下巴痘痘反复长是什么原因| 大便咖啡色什么原因| 乙肝五项245阳性是什么意思| 老年人缺钾吃什么好| 法令纹上有痣代表什么| 秦始皇的母亲叫什么名字| 看肝脏挂什么科| 晚上睡觉口干舌燥是什么原因| sdh是什么意思| 1212是什么星座| 龋齿是什么| 妈妈生日送什么礼物| 排斥一个人什么意思| 中暑吃什么药好| 月经来一点又不来了是什么原因| 什么叫痉挛| 余事勿取是什么意思| 小孩子腿疼是什么原因| 夏天吃西瓜有什么好处| 尿频尿急吃什么药| 奥氮平片治疗什么病| 十一月一日是什么星座| 甲状腺激素高吃什么药| 博士生导师是什么级别| 梦见自己被火烧是什么意思| 自己开店做什么赚钱| 昀字五行属什么| 益气是什么意思| 丑时是什么时候| 血氨高是什么原因| 户口本丢了有什么危害| 白加黑是什么颜色| belle是什么牌子| 西游记什么时候写的| 接风吃什么| 贫血三项是指什么检查| 开场白是什么意思| 泸沽湖在什么地方| 尚公主是什么意思| 什么让我成长| 螺旋杆菌有什么症状| 睡觉出汗是什么原因| 十月二十三号是什么星座| 幽门螺杆菌是一种什么病| 吃什么可以长胖| 林黛玉属什么生肖| 麦子什么时候收割| 酸菜鱼是什么地方的菜| 疱疹长什么样| hda是什么| 田七与三七有什么区别| 什么是事故隐患| 肾结石什么不能吃| 阳萎早谢吃什么药最好| 什么字最难写| 什么是造影手术| 骨折后吃什么恢复快| 什么肉不能吃| 梦见买面条有什么预兆| 辩证法是什么意思| 维生素b6治什么病| 孩子喝什么牛奶有助于长高| 截单是什么意思| 礼成是什么意思| 闺蜜是什么样的关系| 三叉神经吃什么药好| 人参为什么会跑| 备孕怀男孩做什么准备| 玉皇大帝姓什么| 左肺钙化灶是什么意思| 月经量少发黑是什么原因| 黄菡和黄澜什么关系| 秋字五行属什么| 冷敷眼睛有什么好处| 大师是什么意思| 痔疮长什么样子| 经常上火是什么原因| 白矾和明矾有什么区别| 吃什么补维生素| 抹茶粉是什么做的| 2020年是什么年| 三金片治什么病| 海参几头是什么意思| 为什么会得腱鞘炎| 炖鸡汤放什么材料好吃| 长春有什么大学| 西楚霸王是什么生肖| 静待花开什么意思| 跟单员是做什么的| 银色的什么| 2月6日什么星座| 眉中间有竖纹代表什么| 电头是什么| 全身骨显像是查什么的| 耳朵真菌感染用什么药| 苍龙七宿的秘密是什么| tct检查是什么检查| 撒贝宁是什么民族| 黄花菜长什么样子| 凝血酸是什么| 为什么吃了避孕药还是怀孕了| 跪安是什么意思| loa是什么意思| norm什么意思| 本命年红内衣什么时候穿| 锡兵是什么意思| 皂基是什么| 胸痛是什么病的前兆| 逸夫是什么意思| 金榜题名是什么生肖| 经常喝柠檬水有什么好处和坏处| 什么是水印照片| 吃纳豆有什么好处| 白内障的症状是什么| 养什么能清理鱼缸粪便| 什么叫轻断食| 老有眼屎是什么原因| 利尿剂是什么| 吃什么可以软化肝脏| 痛风是什么原因造成的| 九月生日是什么星座| 没腿毛的男人代表什么| 睡觉张嘴是什么原因| 绿豆汤是什么颜色| 为什么奢侈品都是pvc| 今天什么时候出梅| 烦请是什么意思| 前列腺吃什么药好| 血去掉一撇念什么| 什么样的笑脸| 中元节是什么节日| 超字五行属什么| 双手合十什么意思| 卡地亚手表什么档次| 藿香正气水什么人不能喝| 身体抱恙是什么意思| 扁桃体发炎吃什么药好| 恶寒发热是什么意思| 复试一般会问什么问题| 嘴唇起泡是什么原因| 天上的星星像什么| 日久生情是什么意思| 果是什么意思| 宁静什么意思| 孕妇吃什么是补铁的| 百度
"); //-->

博客专栏

EEPW首页 > 博客 > LabVIEW Arduino无线蓝牙遥控智能车(项目篇—2)

里皮对国足的表现很失望 怒斥球员的比赛态度

发布人:美男子玩编程 时间:2025-08-03 来源:工程师 发布文章
百度 1981年9月在清华大学核反应堆工程专业学习,1986年7月在清华大学攻读核反应堆工程与安全专业硕士研究生。

1


项目概述


智能小车是以轮子作为移动机构,并且能够实现自主行驶的机器人,又被称为轮式机器人。由于具有智能化的特点,可以应用于不适合人类工作的环境中,例如灾难救援、户外探险等。智能小车有别于遥控小车,因为后者需要操作人员来控制其转向、启停和前进后退,以及控制其速度,常见的模型小车,都属于这类遥控车。智能小车,则可以通过计算机编程来实现其对行驶方向、启停以及速度的控制,无须人工干预,也可以通过修改智能小车的程序来改变它的行驶方式。


图片


智能小车的典型特点有:

1、拥有至少一个微控制器,通过微控制器来实现对行驶方向、启停和速度的控制。

2、拥有多个各种功能的传感器,以获取外界环境的情况,以供控制器做出准确的决策。


2


项目架构


本节将要介绍一种基于Arduino与LabVIEW的无线遥控智能小车,可以实现自主(巡线和避障)与遥控两种功能,并且可以在两种功能之间进行切换。智能小车采用Arduino作为控制核心,上位机软件采用LabVIEW,两者通过APC220无线数传模块实现无线通信。无线遥控智能小车总体框图如下图所示:


图片


智能小车的车体采用两个驱动轮、一个万向轮的三轮式小车模型,驱动电机采用直流减速电机,电机驱动模块采用VNH2SP30模块,循迹传感器采用OPENJUMPER红外巡线传感器OJ-CG307,避障传感器采用OPENJUMPER红外避障传感器OJ-CG303。


智能小车的巡线场地为白底黑线,线宽约10mm,场地大小约为200cm×300cm。


图片

3


传感器和控制器


3.1、传感器


本节介绍的无线遥控智能小车,可以实现自主与遥控两种功能,并且可以在两种功能之间进行切换。当小车处于遥控状态时,操作者通过操作LabVIEW上位机软件,利用APC220串口无线模块向小车上的Arduino控制器发送遥控指令,从而使小车做出指定的行为动作。而当小车处于自主状态时候,小车上的Arduino控制器通过四个红外巡线传感器和一个红外避障传感器获取小车相对于黑线的位置和前面是否有障碍物的信号,并根据程序中设置的逻辑来控制直流减速电机,以实现巡线和避障的功能。


红外巡线传感器模块是利用红外对管检测模块本身发出的红外线的反射光(深色反射弱,浅色反射强),来为循迹机器人提供白线或者黑线的跟踪,既可以检测白底中的黑线,也可以检测黑底中的白线,若检测到白线则输出高电平,若检测到黑线则输出低电平。


红外避障传感器****红外线并根据反射回来的红外光判断前方是否存在障碍物,无障碍物时输出高电平,有障碍时输出低电平,在信号输出同时有指示灯指示状态,无障碍物时LED为绿,有障碍物时为红。同时内置38kHz的信号发生器,抗干扰能力强。通过调节模块上的2KΩ电位器,可以调节传感器的探测距离。


红外巡线传感器模块如下图所示:


图片


红外避障传感器模块如下图所示:


图片


3.2、控制器


一般情况下,直流电机需要很大的驱动电流,而像Arduino之类的控制器输出的逻辑电平无法直接驱动直流电机,特别是大功率的减速电机,所以就需要通过驱动器件给直流电机提供工作电流。


Arduino爱好者常用的直流电机驱动模块主要有L298模块和VNH2SP30模块。

L298电机驱动模块价格较为便宜,而且单个L298芯片可以同时驱动两路直流电机,所以在Arduino爱好者制作机器人小车时使用较多,但是其转化效率较低,发热量较大,不适合驱动大电流直流电机,当驱动大电流电机时容易发生芯片"假死"等故障。


图片


VNH2SP30模块具有驱动电流大、转换效率高等优点但是单个VNH2SP30芯片只能驱动一路直流电机,如果驱动两路直流电机则需要两个VNH2SP30芯片。 


图片


为了使得遥控智能小车具有良好的动力系统,具有一定的载重能力,此处选用直流减速电机作为整个遥控智能小车的动力来源,并选用颗粒轮胎,以提高抓地能力。


图片



4


硬件环境


将两个直流减速电机的两端分别接至VNH2SP30电机驱动模块上的OUT1A、OUT1B和OUT2A、OUT2B,无正负极和电机转向之分。若电机转向相反,则在调试过程中将电机的连接线对调连接。将VNH2SP30电机驱动模块的+5V (IN)、GND分别接至Arduino Uno控制板上的+5V、GND,为电机驱动模块提供工作电压。


将VNH2SP30电机驱动模块的1INA、1INB、1PWM分别接至Arduino Uno控制板上的数字端口D7、D6、D5,为电机1提供转向和调速控制信号;将VNH2SP30电机驱动模块的2INA、2INB、2PWM分别接至Arduino Uno控制板上的数字端口D4、D2、D3,为电机2提供转向和调速控制信号。需要注意的是,1PWM和2PWM需要接在具有模拟输出(PWM)功能的数字端口。


Arduino控制器与驱动及电机部分的硬件连接,如下图所示:


图片


将一个APC220模块与Arduino Uno控制板相连接,连接方式如下:


APC220 TXD→Arduino Uno控制板RXD,APC220 RXD→Arduino Uno控制板TXD,APC220 VCC→Arduino Uno控制板5V,APC220 GND→Arduino Uno控制板GND。


将另一块APC220模块通过FT232RL转接板相连接,连接方式如下:


APC220 TXD→FT232RL转接板RXD,APC220 RXD→FT232RL转接板TXD,APC220 VCC→FT232RL转接板5V,APC220 GND→FT232RL转接板GND。

将四个红外巡线传感器依次连接至Arduino Uno控制板的数字端口D8、D9、D10、D11,并在将红外巡线传感器安装至智能小车底盘时,对应于左2、左1、右1和右2。将红外避障传感器连接至Arduino Uno控制板的数字端口D12,并将其安装在小车车头的前端。



5


Arduino功能设计


4个红外巡线传感器在智能小车底盘上的安装示意图如下图所示:


图片


初始状态为黑线位于左1和右1传感器之间,表明小车处于黑线中间部分;当左1传感器检测到黑线时,表明小车相对于黑线略微偏向右侧,需要小幅度左转以修正偏差;当左2传感器检测到黑线时,表明小车相对于黑线偏向右侧较多,需要大幅度左转以修正偏差;当右1传感器检测到黑线时,表明小车相对于黑线略微偏向左侧,需要小幅度右转以修正偏差;当右2传感器检测到黑线时,表明小车相对于黑线偏向左侧较多,需要大幅度右转以修正偏差。


遥控部分的调速将速度分为5档,分别为低速、中低速、中速、中高速和高速,通过VNH2SP30电机驱动模块的PWM输入信号实现在五档之间切换与调速。

Arduino Uno控制器程序代码如下所示:




















































































































































































































#define forward_command   0x00   //前进命令#define back_command      0x10   //后退命令#define left_command       0x20   //左转命令#define right_command      0x30   //右转命令#define stop_command      0x40   //停止命令 #define speed_1           0x50   //低速命令#define speed_2           0x60   //中低速命令#define speed_3           0x70   //中速命令#define speed_4           0x80   //中高速命令#define speed_5           0x90   //高速命令 byte comdata[3]={0};   //定义数组数据,用于存放串口命令数据int flag = 0;           //遥控/自动标志位,默认为遥控模式 int INA1 = 7;int INB1 = 6;int PWM1 = 5;      //定义电机1的转向和速度的控制引脚int INA2 = 4;int INB2 = 2;int PWM2 = 3;      //定义电机2的转向和速度的控制引脚 int Trace_sensor_X1=8;int Trace_sensor_X2=9;int Trace_sensor_Y1=10;int Trace_sensor_Y2=11;      //定义四个红外循迹传感器的引脚int Avoidance_sensor=12;     //定义红外避障传感器的引脚 void receive_data(void);      //接收串口命令数据void test_do_data(void);      //测试串口命令数据是否正确,并执行命令 void forward(void);        //前进子函数void back(void);           //后退子函数void turn_Left(void);        //左转子函数void turn_Right(void);       //右转子函数void stop_car(void);             //停止子函数 void Automatic_mode(void);      //自动模式子函数 void setup(){  Serial.begin(9600);             //初始化串口波特率为9600  pinMode(INA1, OUTPUT);  pinMode(INB1, OUTPUT);  pinMode(PWM1, OUTPUT);      //设置电机1的控制引脚为输出状态  pinMode(INA2, OUTPUT);  pinMode(INB2, OUTPUT);  pinMode(PWM2, OUTPUT);      //设置电机2的控制引脚为输出状态   pinMode(Trace_sensor_X1, INPUT);  pinMode(Trace_sensor_X2, INPUT);  pinMode(Trace_sensor_Y1, INPUT);  pinMode(Trace_sensor_Y2, INPUT); //设置红外循迹传感器的控制引脚为输入状态  pinMode(Avoidance_sensor,INPUT); //设置红外避障传感器的控制引脚为输入状态   analogWrite(PWM1,150); //left motor  analogWrite(PWM2,150); //ringt motor    //将电机速度设置为中速档位} void loop(){  if (Serial.available() > 0)      //不断检测串口是否有数据   {        receive_data();            //从串口缓冲区接收串口命令数据        test_do_data();            //测试串口命令数据是否正确并执行命令   }   if(flag==1)            //判断是否为自动模式状态   {   Automatic_mode();                 //执行自动模式  analogWrite(PWM1,150); //left motor   analogWrite(PWM2,150); //ringt motor     //将电机速度切换至中速档位   }} void receive_data(void)   //从串口缓冲区接收串口命令数据{   int i ;   for(i=0;i<3;i++)   //命令长度为3个字节,每次读取3个字节   {      comdata[i] =Serial.read();   //读取一个字节的数据      //延时一会,让串口缓存准备好下一个字节,不延时可能会导致数据丢失,       delay(2);   }} void test_do_data(void)      //测试串口命令数据是否正确并执行命令{  if(comdata[0] == 0x55)            //0x55为命令帧头,判断帧头是否正确   {     if(comdata[1] == 0xAA)        //0xAA为遥控模式命令     {  flag=0;               //切换至遥控模式         switch (comdata[2])         //匹配遥控模式中的具体命令          {            case forward_command:      //前进命令                 forward();                 break;            case back_command:         //后退命令           back();                 break ;            case left_command:          //左转命令           turn_Left();                 break ;            case right_command:         //右转命令           turn_Right();                 break ;            case stop_command:         //停止命令           stop_car();                 break ;      case speed_1:               //低速命令           analogWrite(PWM1,50);           analogWrite(PWM2,50);                   break;            case speed_2:                //右转命令           analogWrite(PWM1,100);            analogWrite(PWM2,100);                  break ;            case speed_3:                //右转命令     analogWrite(PWM1,150);      analogWrite(PWM2,150);                  break ;            case speed_4:                //右转命令     analogWrite(PWM1,200);      analogWrite(PWM2,200);                  break ;      case speed_5:                //右转命令           analogWrite(PWM1,250);     analogWrite(PWM2,250);                  break ;          }                    }      if(comdata[1] == 0xFF)        //0xFF为自主模式命令      {        flag=1;               //切换至自主模式        comdata[2] = 0;               //清空命令数据      }   }} void Automatic_mode(void)     //自主模式,循迹和避障{  int State_value=0;  if(digitalRead(Avoidance_sensor)==0)   //避障功能,有障碍物则后退左转  {    back();    delay(1000);    turn_Left();    delay(500);  }  //读取红外循迹传感器组的状态  State_value=digitalRead(Trace_sensor_X2)*8+digitalRead(Trace_sensor_X1)*4+digitalRead(Trace_sensor_Y1)*2+digitalRead(Trace_sensor_Y2);  switch (State_value)     //匹配状态,并调整位置         {            case 8:               //大幅度偏左,大角度右转    turn_Right();    delay(200);                   break;            case 4:               //小幅度偏左,小角度右转    turn_Right();          delay(100);                   break ;            case 2:               //小幅度偏右,小角度左转    turn_Left();    delay(100);                   break ;            case 1:               //大幅度偏右,大角度左转    turn_Left();    delay(200);                   break ;            default:               //其他状态,前进    forward();    break;          }    } void forward(void)    //前进{  digitalWrite(INA1, LOW);   digitalWrite(INB1, HIGH);   digitalWrite(INA2, LOW);   digitalWrite(INB2, HIGH); }void back(void)    //后退{  digitalWrite(INA1, HIGH);   digitalWrite(INB1, LOW);   digitalWrite(INA2, HIGH);   digitalWrite(INB2, LOW); }void turn_Left(void)    //左转{  digitalWrite(INA1, LOW);   digitalWrite(INB1, HIGH);   digitalWrite(INA2, HIGH);   digitalWrite(INB2, LOW); }void turn_Right(void)    //右转{  digitalWrite(INA1, HIGH);   digitalWrite(INB1, LOW);   digitalWrite(INA2, LOW);   digitalWrite(INB2, HIGH); }void stop_car(void)    //停止{  digitalWrite(INA1, LOW);   digitalWrite(INB1, LOW);   digitalWrite(INA2, LOW);   digitalWrite(INB2, LOW); }



6


LabVIEW功能设计


LabVIEW上位机部分需要完成以下功能:

1、当从遥控状态切换至自主状态时,向下位机Arduino控制器发送自主状态命令,Arduino控制器通过读取红外巡线传感器和红外避障传感器,以实现巡线和避障的功能。

2、当从自主状态切换至遥控状态时,向下位机Arduino控制器发送遥控状态命令,Arduino控制器通过读取LabVIEW软件发来的操作命令,并实现指定的动作和行为,包括前进、后退、左转、右转、停止和调速。


6.1、前面板设计


LabVIEW前面板分为遥控模式和模式切换两个部分,遥控模式部分用于控制小车的运行状态,包括前进、后退、左转、右转、停止和调速;模式选择部分用于切换遥控模式和自主模式。


无线遥控智能小车的LabVIEW上位机前面板,如下图所示:


图片


6.2、程序框图设计


LabVIEW上位机主程序的结构为顺序结构+While循环+事件结构。首先,通过设置的串口号来初始化串口通信;然后,程序进入While循环和事件结构,不断地检测是否有事件得到响应并执行;事件结构有“模式选项"、“前进”、“后退”、“左转"、“右转"、“停止"和“"调速"。最后,关闭串口通信。在程序框图中,我们需要对串口进行配置,并将根据不同的按键按下通过串口发出不同的命令,下位机Arduino Uno收到串口收据,解析出其中的命令代码后执行相应的命令。


为了更好地实现通信,制定如下的通信协议:帧头+命令码+操作码。0x55为帧头,0xAA为遥控命令,0xFF为自主命令,遥控命令的操作码:0x00为前进,0x10为后退,0x20为左转,0x30为右转,0x40为停止,0x50为速度档1,0x60为速度档2,0x70为速度档3,0x80为速度档4,0x90为速度档5。


在“模式选项”事件中,通过读取当前选择的模式,向Arduino控制器分别发送0x55AA和Ox55FF,分别表示切换至遥控模式和自主模式。“模式选项”值改变事件程序框图如下图所示:


图片


在“前进"事件中,通过串口向Arduino控制器发送0x55AA00,Arduino控制器将两个直流减速电机均设置为前进方向。“前进"值改变事件程序框图如下图所示:


图片


在“后退"事件中,通过串口向Arduino控制器发送0x55AA10,Arduino控制器将两个直流减速电机均设置为后退方向。“后退"值改变事件程序框图如下图所示:


图片


在“左转"事件中,通过串口向Arduino控制器发送0x55AA20,Arduino控制器将右侧电机设置为前进方向、左侧电机设置为后退方向,从而实现左转。“左转"值改变事件程序框图如下图所示:


图片


在“右转”事件中,通过串口向Arduino控制器发送0x55AA30,Arduino控制器将右侧电机设置为后退方向、左侧电机设置为前进方向,从而实现右转。“右转"值改变事件程序框图如下图所示:


图片


均在“停止"事件中,通过串口向Arduino控制器发送0x55AA40,Arduino控制器将左、右两个电机均设置为停止状态,从而实现小车的停止。“停止"值改变事件程序框图如下图所示:


图片


在“速度档位"值改变事件中,通过读取当前选择的速度档位,向Arduino控制器分别发送0x55AA50、0x55AA60、0x55AA70、0x55AA80、0x55AA90,分别表示低速、中低速、中速、中高速和高速。“速度档位"值改变事件的程序框图如下图所示:


图片


*博客内容为网友个人发布,仅代表博主个人观点,如有侵权请联系工作人员删除。



关键词: LabVIEW

相关推荐

技术专区

关闭
保护心脏吃什么最好 流清鼻涕是什么感冒 什么的葡萄 左边头痛什么原因 喝什么可以排便通畅
york是什么牌子 什么果不能吃 梦见已故朋友什么预兆 什么病会晕倒 水银是什么东西
绕梁三日是什么意思 什么人会得免疫性脑炎 处暑是什么意思 白细胞低是什么原因引起的 户别是什么
什么是热伤风 秋天的落叶像什么 梦见被猪咬是什么意思 揾什么意思 堂哥的女儿叫什么
1973年是什么命shenchushe.com 吃茄子有什么坏处hcv8jop1ns0r.cn 乳腺增生应该注意些什么hcv9jop5ns8r.cn 什么样的充电宝能带上飞机hcv8jop6ns9r.cn 晚字五行属什么hcv7jop5ns1r.cn
顾名思义的顾什么意思hcv9jop2ns0r.cn 尿胆原阳性是什么病hcv9jop0ns7r.cn 舌头溃疡吃什么药hcv9jop2ns8r.cn 口坐念什么hcv9jop8ns2r.cn 白球比低是什么原因hcv8jop7ns1r.cn
刘邦是什么星座hcv9jop1ns6r.cn ict是什么意思naasee.com kissme什么意思hcv9jop3ns0r.cn 羔羊跪乳是什么意思hcv9jop6ns5r.cn bacardi是什么酒hanqikai.com
柠檬和什么一起泡减肥hcv8jop1ns0r.cn 音容笑貌的意思是什么hcv7jop6ns7r.cn 属鸡女和什么属相最配hcv7jop5ns5r.cn 屁眼疼痛什么原因tiangongnft.com 出身是什么意思hcv8jop9ns2r.cn
百度