当前位置: 首页 > news >正文

自动驾驶车辆轨迹跟踪

相对于传统的模型预测控制(MPC),简化的车辆模型通常会导致预测结果不准确,这对车辆的转弯等行为具有负面影响。因此作者提出了一种轨迹规划和跟踪框架:

  • 该框架应用人工势场来获得目标轨迹;
  • 并利用具有PID反馈的MPC来有效跟踪规划的轨迹;

来自:Trajectory Tracking of Autonomous Vehicle Based on Model Predictive Control With PID Feedback

目录

  • 问题描述
  • 方法
    • 人工势场
      • 道路环境势场
      • 周边车辆势场
      • 驾驶方向势场
      • 车辆轨迹规划
    • 跟踪控制器设计
      • 车辆运动模型
      • 模型预测控制的设计
      • 反馈控制的设计
      • 横向设计轨迹的修正

问题描述

自动驾驶的轨迹规划方法包括人工势场,快速探索随机树等。人工势场结构简单,数学描述清晰,是目前常用的轨迹规划方法。在完成轨迹规划后,由于轨迹会随着周围环境的变化而变化,因此实时跟踪轨迹也是重要的。一般来说,跟踪控制算法分为两类:基于数据的控制和基于模型的控制:

  • 数据驱动的控制体系结构简单,没有车辆的动态和运动学模型,但是如果没有合适的参数,控制车辆的运动将出现振动等不稳定情况,此外,这类方法的可扩展性和物理可解释性都很差;
  • 基于模型的控制方法根据车辆的运动学模型产生控制值,基于模型的控制器可以减少调优所需的工作量,然而,这些基于模型的控制算法需要高精度的运动或动态车辆模型,这在实际车辆控制中是不可能实现的。通常,真实的自动驾驶车辆采用过于简化的运动学或动力学车辆模型。在车辆通过长曲线时,会出现与车道线的巨大偏差,如图1。

该研究对人工势场和控制方法进行了改进,首先是对势场进行改进,消除了自动驾驶车辆与障碍车辆,道路边缘之间的局部极小值。其次,提出基于动态和跟踪特性的反馈MPC控制方法。MPC代表了车辆的运动特性,PID的反馈可以提高跟踪性能。对于传统的MPC来说,内部模型和真实车辆之间的差距是不可避免的。在这种情况下,PID方法可以减少由近似模型引起的误差,MPC方法可以减少控制器整定和校准的时间和精力。

fig1

  • 图1:自动驾驶车辆的规划轨迹和实际轨迹之间的误差。

方法

人工势场

势场通常由“碗状”吸引场和“山状”排斥场组成。在这种情况下,前者迫使对象靠近,后者迫使对象朝相反方向移动。该研究采用势场来规划车辆的轨迹。道路运输中势场的类型大致分为两类:道路环境势场和周边车辆势场。

道路环境势场

道路环境势场一般考虑道路边缘和车道线,公式1和公式2表示道路边缘和车道线的势场,公式3为道路环境势场。
eq1
其中, A e d g e A_{edge} Aedge A l a n e A_{lane} Alane分别为道路边缘和车道线的势场系数,由它们的势场方向和自身车辆的最大横向速度确定。 σ l a n e \sigma_{lane} σlane为车道线势场的衰减系数,该常数反映了 U l a n e U_{lane} Ulane的衰减率,从而保证在车道中间位置处的 U r o a d = 0 U_{road}=0 Uroad=0。如图2所示, D e d g e D_{edge} Dedge为自动驾驶车辆到道路边缘的最短距离, D l a n e D_{lane} Dlane为自动驾驶车辆到道路车道线的最短长度。

fig2

  • 图2:在道路环境的人工势场建模中使用的自动驾驶车辆距离示意图。

周边车辆势场

fig3

  • 图3:障碍车辆的人工势场建模示意图。

该研究还考虑了局部车道上前面的障碍车辆,并假设自动驾驶车辆的移动速度比周边车辆快。在这种情况下,障碍车辆的势场建模是在原点固定在车身框架末端中点的坐标系中实现的。如图3所示,在障碍车辆周围,直角梯形区域是障碍车辆的安全区域。注意,靠近道路边缘的一侧比靠近车道线的一侧长。如果障碍车辆在中间车道,将使用传统的等腰三角形场。 S S S是障碍车辆的安全距离。该安全距离由自动驾驶车辆和障碍车辆之间的相对速度 v r e v_{re} vre确定。
eq2

其中, K s K_{s} Ks为反应时间的系数, S m i n S_{min} Smin为最小安全距离,当自动驾驶车辆位于图3中的位置 P 1 P1 P1时,纵向和横向势场值如公式5和公式6所示。
eq3
其中, d 1 x d1_{x} d1x d 1 y d1_{y} d1y为在障碍车辆坐标系的 x x x轴方向和 y y y轴方向上从 d 1 d1 d1除以的距离。 d 1 d1 d1是从 p 1 p1 p1到障碍车辆的安全区域的最短距离值。 λ , σ c a r \lambda,\sigma_{car} λ,σcar是反应衰减率的纵向和横向势场的衰减系数,可以通过人类驾驶行为进行校准。 A l o n g A_{long} Along是纵向势场系数,表示由于前方障碍物车辆造成的最大纵向局部速度。当自动驾驶车辆位于位置 P 2 P2 P2时,纵向势场设置为 A l o n g A_{long} Along,横向势场如公式7所示。
eq4
其中 d 2 d2 d2是从 P 2 P2 P2到安全区域的最短距离值。当自动驾驶车辆位于位置 P 3 P3 P3时,纵向势场显示如下。
eq5
其中 d 3 d3 d3是从 P 3 P3 P3到安全区域的最短距离值。当自动驾驶车辆处于位置 P 4 P4 P4时,纵向人工势场被设置为 A l o n g A_{long} Along

驾驶方向势场

为了保持车辆的前进,假设自动驾驶车辆的前进方向有一个势场,该势场可以诱导车辆的前进趋势。如公式9所示,吸引势场 U a t t U_{att} Uatt是设计速度 v d v_d vd的函数,如下所示。
eq6
其中 k k k τ τ τ是吸引势场系数, k k k为正, τ τ τ为负。

车辆轨迹规划

如上所述,在纵向方向上,有吸引势场 U a t t U_{att} Uatt和纵向障碍势场 U o b , l o n g U_{ob,long} Uob,long。此外,在横向方向上,有道路车道势场 U l a n e U_{lane} Ulane、道路边缘势场 U e d g e U_{edge} Uedge和横向障碍物势场 U o b , l a t e r a l U_{ob,lateral} Uob,lateral。随后,自动驾驶车辆的总纵向 U x U_{x} Ux和横向 U y U_y Uy势场值如式10和式11所示。
eq7
基于总势场,开始执行局部轨迹规划,如公式12和公式13所示。位置序列 [ ( x p , t ( 1 ) , y p , t ( 1 ) ) , ( x p , t ( 2 ) , y p , t ( 2 ) ) , . . . , ( x p , t ( N ) , y p , t ( N ) ) ] [(x_{p,t}(1),y_{p,t}(1)),(x_{p,t}(2),y_{p,t}(2)),...,(x_{p,t}(N),y_{p,t}(N))] [(xp,t(1),yp,t(1)),(xp,t(2),yp,t(2)),...,(xp,t(N),yp,t(N))]形成自动驾驶车辆在时刻 t t t的局部规划轨迹。
eq8
其中, ( x p , t ( 0 ) , y p , t ( 0 ) ) (x_{p,t}(0),y_{p,t}(0)) (xp,t(0),yp,t(0))为自动驾驶车辆在时刻 t t t的位置。 ( x p , t ( k + 1 ) , y p , t ( k + 1 ) ) (x_{p,t}(k+1),y_{p,t}(k+1)) (xp,t(k+1),yp,t(k+1))为车辆在时刻 ( t + ( k + 1 ) T ) (t+(k+1)T) (t+(k+1)T)上的计划位置。 K y K_{y} Ky K x K_{x} Kx是速度因子,确保 K y U y ( k ) K_{y}U_{y}(k) KyUy(k)小于最大横向速度, K x U x ( k ) K_{x}U_{x}(k) KxUx(k)小于最大纵向速度。

跟踪控制器设计

关于横向控制(车轮转向角 σ t σ_t σt),MPC提供前馈控制律,PID应用反馈控制律(PID_lat)。在纵向控制(车辆节气门位置 T k T_k Tk)方面,MPC控制器作为辅助纵向规划器,产生速度分布。此外,自动驾驶车辆通过PID控制器(PID_long)跟踪速度曲线。图4展示了具有PID反馈的MPC控制器的结构。
fig4

  • 图4:具有PID反馈的MPC控制器的结构。

车辆运动模型

fig5

  • 图5:车辆运动模型

将纵向、横向和偏航运动的线性运动学模型应用于MPC控制器。如图5所示, x , y x,y x,y为车辆后桥在惯性坐标上的中点位置。其中, ϕ \phi ϕ是车辆的方向。我们定义一个有状态变量的线性系统 X = [ x , y , ϕ ] T X=[x,y,\phi]^{T} X=[x,y,ϕ]T和控制变量 u = [ v , δ ] T u=[v,\delta]^{T} u=[v,δ]T,得到相应的3-DOF车辆动力学模型如下所示。
eq9
这些微分方程可以写成下面的紧凑形式。
eq10
设计轨迹可定义如下:
eq11

其中 χ r χr χr为参考状态, u r u_r ur为参考控制输出。基于对设计点的泰勒级数展开,我们得到近似如下:
eq12
结合公式16和17得到:
eq13
式中 x r x_r xr y r y_r yr ϕ r \phi_r ϕr分别为参考 x x x轴位置、参考 y y y轴位置和参考航向角, v r v_r vr δ r δ_r δr是参考速度和参考前轮角。对周期为 T T T的公式18中的系统离散化:
eq14
为了形成增广模型,选择一个新的状态变量:
eq15
其中 m m m n n n为状态变量和控制变量的维数。 Δ u ( k ∣ t ) \Delta u(k|t) Δu(kt)是控制增量。

模型预测控制的设计

假设 A ‾ k , t = A ‾ t , t , B ‾ k , t = B ‾ t , t \overline{A}_{k,t}=\overline{A}_{t,t},\overline{B}_{k,t}=\overline{B}_{t,t} Ak,t=At,t,Bk,t=Bt,t,基于状态空间 ( A ‾ k , t , B ‾ k , t , C ‾ k , t ) (\overline{A}_{k,t},\overline{B}_{k,t},\overline{C}_{k,t}) (Ak,t,Bk,t,Ck,t),使用未来控制参数集依次计算预测状态变量:
eq16
对于协同控制系统中主体车辆的纵向和横向运动控制,我们定义如下的代价函数:
eq17
其中第一项与最小化预测输出点与期望轨迹点之间的误差的目标有关,第二项反映了对 Δ U ( t ) \Delta U(t) ΔU(t)大小的考虑。为了找到最优的 Δ U \Delta U ΔU,我们最小化 J J J,它可以表示为:
eq18

反馈控制的设计

如图3所示,横向控制由MPC前馈控制器和PID反馈控制器(PID_lat)组成。如前面所分析的,MPC中简化的车辆模型可能会产生误差。在仿真实验中,传统MPC试图跟踪计划轨迹。通过弯道时车辆协调横向误差大部分集中在0.035 ~ 0.082范围内。这种误差是由于MPC中车辆内部模型的不准确造成的。因此,PID_lat控制律足以补偿,引入PID_lat控制律对MPC控制器产生校正,如式32所示。最后,公式33表明,产生最终横向控制值 δ r e a l ( k ) δ_{real}(k) δreal(k)的两个部分是MPC控制值 δ M P C ( k ) δ_{MPC}(k) δMPC(k)和PID_lat控制值 U p i d ( k ) U_{pid}(k) Upid(k)
eq19

横向设计轨迹的修正

纵向跟踪误差可能会发生,特别是在车辆的初始运动阶段。在这种情况下,对于时间 ( t = k ) (t = k) (t=k),最近的设计轨迹点是 ( x p ( k ) , y p ( k ) ) (x_p (k), y_p(k)) (xp(k)yp(k)),而不是前面序列中假定的点 ( x p ( k + 1 ) , y p ( k + 1 ) ) (x_p (k + 1), y_p(k + 1)) (xp(k+1)yp(k+1))。此外,以点 ( x p ( k + 1 ) , y p ( k + 1 ) ) (x_p(k + 1), y_p(k + 1)) (xp(k+1)yp(k+1))为目标的横向控制将导致横向运动的简化,并与设计轨迹相比产生横向误差。

这种扭曲的轨迹可能会导致碰撞风险,如图6所示。在这种情况下,对车辆 ( t = k ) (t = k) (t=k)的控制瞄准其原始目标点 ( x d ( k + 1 ) , y d ( k + 1 ) ) (x_d (k + 1), y_d (k + 1)) (xd(k+1)yd(k+1))可能导致与障碍车辆发生碰撞。为了消除这种简化,可以解耦横向和纵向目标点。对于时间 t = k t = k t=k,纵向目标点 x d ( k + 1 ) x_d (k + 1) xd(k+1)保持不变,横向目标点需要修改。选择最接近前面序列中当前位置的目标点作为修改后的横向目标,用 y d ∗ ( k + 1 ) y^*_d (k + 1) yd(k+1)表示。也就是说,控制器中实际使用的目标点为 ( x d ( k + 1 ) , y d ∗ ( k + 1 ) ) (x_d (k + 1),y^*_d (k + 1)) (xd(k+1),yd(k+1)),时刻 k k k的目标点为 ( x d ( k + 1 ) , y d ( k ) ) (x_d (k + 1),y_d (k )) (xd(k+1),yd(k))
fig6

  • 图6:由扭曲的轨迹引起碰撞。

相关文章:

自动驾驶车辆轨迹跟踪

相对于传统的模型预测控制(MPC),简化的车辆模型通常会导致预测结果不准确,这对车辆的转弯等行为具有负面影响。因此作者提出了一种轨迹规划和跟踪框架: 该框架应用人工势场来获得目标轨迹;并利用具有PID反…...

React的useEvent 和 ahooks 的 useMemorizedFn 的深度分析和对比

父组件 const TestParent: React.FC<any> () > {const [State, setState] useState(0);const changeFun useCallback(() > {console.log(useCallback closure 里的 State, State);}, [State]);const changeFun_useEvent useEvent(() > {console.log(useEv…...

基于goframe2.5.4、vue3、tdesign-vue-next开发的全栈前后端分离的管理系统

goframe-admin goframe-admin V1.0.0 平台简介 基于goframe2.5.4、vue3、tdesign-vue-next开发的全栈前后端分离的管理系统。前端采用tdesign-vue-next-starter 、vue3、pinia、tdesign-vue-next。 特征 高生产率&#xff1a;几分钟即可搭建一个后台管理系统认证机制&#x…...

LInux之在同一Tomcat下使用不同的端口号访问不同的项目

&#x1f389;&#x1f389;欢迎来到我的CSDN主页&#xff01;&#x1f389;&#x1f389; &#x1f3c5;我是君易--鑨&#xff0c;一个在CSDN分享笔记的博主。&#x1f4da;&#x1f4da; &#x1f31f;推荐给大家我的博客专栏《LInux实战开发》。&#x1f3af;&#x1f3af; …...

梦百合上榜2023鼎革奖数字化转型先锋榜

10月26日,第六届“鼎革奖”数字化转型先锋榜单揭晓,梦百合家居凭借数字化生产的卓越成果——SAP管理平台及供应链项目,入选2023【鼎革奖】数字化转型先锋榜年度供应链转型典范,梦百合家居COO 崔慧明同步入选2023【鼎革奖】数字化转型先锋榜年度首席运营官。 据了解,「鼎革奖」数…...

沉痛悼念科研分公司

今天上班途中&#xff0c;遇到了上家公司的同事王强。他正准备去体检中心体检。几句寒暄之后&#xff0c;得知他是要入职选煤公司了。 我们所在的公司比较大&#xff0c;总公司下设有几十个分、子公司&#xff0c;我和他曾经在一家子公司——科研分公司。现在的科研分公司解散…...

Django的网站项目开发好了,该用何种方案在Centos上部署【答:Gunicorn(uWSGI)+Nginx】

问&#xff1a;用Django开发的网站开发好了&#xff0c;现在要部署上线。 系统为Centos 7.x 现在我安装好Django和相关依赖后&#xff0c;我用命令 python manage.py runserver 127.0.0.1:8010 启动Django 然后安装配置好Nginx,并把用的请求转发到 127.0.0.1:8010 。 请问这样的…...

基于PyTorch的中文情绪分析器设计与开发

收藏和点赞&#xff0c;您的关注是我创作的动力 文章目录 概要 一、相关基础理论2.1 主流深度学习框架2.2 神经网络2.2.1 神经网络基础 二、中文情感分类模型构建3.1 开发环境3.2 数据部分3.3 文本特征提取3.3.1、过滤标点符号3.3.2 中文分词、单词过滤 三 运行结果与分析五 结…...

HT5010 音频转换器工作原理

HT5010是一款低成B的立体声DA转换器&#xff0c;内部集成了内插滤波器、DA转换器和输出模拟滤波等电路。其可支持多种音频数字输入格式&#xff0c;支持24-bit字节。 该HT5010 基于一个多比特位的Δ-Σ调制器&#xff0c;将数字信号转化成两个声道的模拟信号并经过模拟滤波器滤…...

ubuntu18.04如何更新到22.04

将linux系统中的Ubuntu 18.04更新到22.04&#xff0c;按照以下步骤操作&#xff1a; 打开终端并更新系统&#xff0c;使用以下命令&#xff1a; sudo apt update sudo apt upgrade sudo apt dist-upgrade 确保系统是最新的&#xff0c;然后备份数据&#xff0c;以防万一。执…...

嵌入式软件开发:第二部分–七个步骤计划

使用一种工具&#xff08;仅一种工具&#xff09;武装自己&#xff0c;您可以在下一个嵌入式项目的质量和交付时间上做出巨大的改进。点击领取嵌入式物联网学习路线 该工具是&#xff1a;绝对承诺对开发代码的方式进行一些小而基本的更改 。 有了改变的意志&#xff0c;今天您…...

什么是IPA,和RPA有啥区别和联系?

∵ IPA中包含了RPA的“PA”&#xff0c;AI的“I” ∴IPARPAAI&#xff0c;等式成立&#xff01; AI&#xff1a;或人工智能&#xff0c;是一种复杂的计算机技术&#xff0c;旨在模仿人类智能行为和决策的能力。它涵盖了多种技术和方法&#xff0c;包括&#xff1a;机器学习&am…...

内涝积水监测仪怎么样?万宾科技城市内涝积水监测的作用

在城市建设发展过程中&#xff0c;道路基础设施的建设永远都占据着重要一席&#xff0c;因为人们出行一旦受阻便会影响城市进展&#xff0c;也会影响经济发展。在城市之中有隧道&#xff0c;下穿式立交桥等容易存积水的地方&#xff0c;一旦出现恶劣暴雨天气&#xff0c;这些地…...

【java】命令行,包

文件夹情况&#xff1a; HelloWorld.java package com.demo; public class HelloWorld{public static void print(){System.out.println("HelloWorld!");}public static void main(String[] args){print();} } import.java import com.demo.HelloWorld; public cla…...

Generative AI 新世界 | 文生图(Text-to-Image)领域论文解读

在上期文章&#xff0c;我们开始探讨生成式 AI&#xff08;Generative AI&#xff09;的另一个进步迅速的领域&#xff1a;文生图&#xff08;Text-to-Image&#xff09;领域。概述了 CLIP、OpenCLIP、扩散模型、DALL-E-2 模型、Stable Diffusion 模型等文生图&#xff08;Text…...

03.从简单的sql开始

从简单的sql开始 一、sql语句的种类二、oracle的工作原理三、oracle数据库常见基础命令 一、sql语句的种类 下面是SQL语句的分类、常用语句、使用方法&#xff1a; 分类语句使用方法解释数据查询SELECTSELECT column1, column2, … FROM table_name WHERE condition;用于从表…...

JS加密/解密之jsjiami在线js加密的效率问题

故事背景 ​ 经常有客户反馈&#xff0c;v7加密的效率比v6低&#xff0c;但是安全性更好。这里我给大家科普一下关于jsjiami的优化诀窍。 示例源代码 // 伪代码 while (1) {var name ‘张三’ }优化后 var _name 张三; while (1) {var name _name }优化原理 相信很多朋…...

解决【spring boot】Process finished with exit code 0的问题

文章目录 1. 复现错误2. 分析错误3. 解决问题 1. 复现错误 今天从https://start.spring.io下载配置好的spring boot项目&#xff1a; 启动后却报出如下错误&#xff1a; 即Process finished with exit code 0 2. 分析错误 Process finished with exit code 0翻译成中文进程已完…...

模电学习路径

交流通路实质 列出电路方程1&#xff0c;方程1对时刻t做微分 所得方程1‘ 即为 交流通路 方程1对时刻t做微分&#xff1a;两个不同时刻的方程1相减&#xff0c;并 令两时刻差为 无穷小 微分 改成 差 模电学习路径&#xff1a; 理论 《电路原理》清华大学 于歆杰 朱桂萍 陆文…...

【Linux】配置JDKTomcat开发环境及MySQL安装和后端项目部署

目录 一、jdk安装配置 1. 传入资源 2. 解压 3. 配置 二、Tomcat安装 1. 解压开启 2. 开放端口 三、MySQL安装 1. 解压安装 2. 登入配置 四、后端部署 1. 数据库 2. 导入.war包 3. 修改端口 4.开启访问 一、jdk安装配置 打开虚拟机 Centos 登入账号&#xff…...

Modelsim 使用教程(3)——Projects

目录 一、概述 二、设计文件及tb 2.1 设计文件 counter.v 2.2 仿真文件 tcounter.v 三、操作流程 3.1 Create a New Project&#xff08;创建一个新的工程&#xff09; 3.2 Add Objects to the Project&#xff08;把代码加入项目&#xff09; 3.3 Compile the …...

pytorch复现3_GoogLenet

背景&#xff1a; GoogLeNeta是2014年提出的一种全新的深度学习结构&#xff0c;在这之前的AlexNet、VGG等结构都是通过增大网络的深度(层数)来获得更好的训练效果&#xff0c;但层数的增加会带来很多负作用&#xff0c;比如overfit、梯度消失、梯度爆炸等。GoogLeNet通过引入i…...

CH09_重新组织数据

拆分变量&#xff08;Split Variable&#xff09; 曾用名&#xff1a;移除对参数的赋值&#xff08;Remove Assignments to Parameters&#xff09; 曾用名&#xff1a;分解临时变量&#xff08;Split Temp&#xff09; let temp 2 * (height width); console.log(temp); t…...

最新 IntelliJ IDEA 旗舰版和社区版下载安装教程(图解)

&#x1f337;&#x1f341; 博主猫头虎&#xff08;&#x1f405;&#x1f43e;&#xff09;带您 Go to New World✨&#x1f341; &#x1f984; 博客首页——&#x1f405;&#x1f43e;猫头虎的博客&#x1f390; &#x1f433; 《面试题大全专栏》 &#x1f995; 文章图文…...

优化 FPGA HLS 设计

优化 FPGA HLS 设计 用工具用 C 生成 RTL 的代码基本不可读。以下是如何在不更改任何 RTL 的情况下提高设计性能。 介绍 高级设计能够以简洁的方式捕获设计&#xff0c;从而减少错误并更容易调试。然而&#xff0c;经常出现的问题是性能权衡。在高度复杂的 FPGA 设计中实现高性…...

LVGL库入门 01 - 样式

一、LVGL样式概述 1、创建样式 在 LVGL 中&#xff0c;样式都是以对象的方式存在&#xff0c;一个对象可以描述一种样式。每个控件都可以独立添加样式&#xff0c;创建的样式之间互不影响。 可以使用 lv_style_t 类型创建一个样式并初始化&#xff1a; static lv_style_t s…...

酷克数据出席永洪科技用户大会 携手驱动商业智能升级

10月27日&#xff0c;第7届永洪科技全国用户大会在北京召开。酷克数据作为国内云原生数仓代表企业&#xff0c;受邀出席本次大会&#xff0c;全面展示了云数仓领域最新前沿技术&#xff0c;并进行主题演讲。 携手合作 助力企业释放数据价值 数据仓库是商业智能&#xff08;BI…...

英语教育目标转变:更加注重实际应用能力培养

今年九月份,北京市教委发布了《关于深入推进高中阶段学校考试招生改革的实施意见》。按照该意见,北京市2024年初三年级学生的初中学业水平考试英语科目听力口语考试与笔试将分离,首次计算机考试将于2023年12月17日进行。 根据《意见》规定,听力口语计算机考试共有两次考试机会…...

Java中的继承和多态

目录 1. 继承 1.1 为什么需要继承 1.2 继承概念 1.3 继承的语法 1.4 父类成员访问 1.4.1 子类中访问父类的成员变量 1.4.2 子类中访问父类的成员方法 1.5 super关键字 1.6 子类构造方法 1.7 super和this 1.8 再谈初始化 1.9 protected 关键字 1.10 继承方式…...

海外问卷调查现在还可以做吗?

可以做&#xff0c;海外问卷调查是一个稳定长期的互联网创业项目。 大家好&#xff0c;我是橙河&#xff0c;这篇文章讲一讲海外问卷调查现在还可以做吗&#xff1f; 海外问卷调查&#xff0c;简单来说&#xff0c;就是外国的商业公司对外发放的付费调查问卷&#xff0c;按照…...