![移动机器人原理与设计(原书第2版)](https://wfqqreader-1252317822.image.myqcloud.com/cover/158/41517158/b_41517158.jpg)
1.6 习题参考答案
习题1.1参考答案 (伴随矩阵的性质)
1)矩阵Ad(w)的特征多项式计算起来相对简单,如下式所示:
![](https://epubservercos.yuewen.com/9D1A5D/21647389701428506/epubprivate/OEBPS/Images/25t4.jpg?sign=1738846256-6RKPt5wWlucNHtK9HCN8M8Ns6pIz76VQ-0-43a239e8ddc7dd700a6084ea1380fc34)
由此可得其特征值为{0,||w||i,-||w||i}。最后可得:
![](https://epubservercos.yuewen.com/9D1A5D/21647389701428506/epubprivate/OEBPS/Images/26t1.jpg?sign=1738846256-SbnDqjbSZNr8mt6O7CRd3iIrhuLARHwa-0-1a8e6f8ff6a2243963cc9db85a1473fc)
因此,与0对应的特征向量为w。矩阵Ad(w)是与一个绕w的旋转坐标系的速度向量场相关的。因为轴w不会移动,所以Ad(w)·w=0。
2)①证明x⊥(w∧x)。为此,完全可以证明xTAd(w)x=0,由此可得x⊥Ad(w)x,则有:
![](https://epubservercos.yuewen.com/9D1A5D/21647389701428506/epubprivate/OEBPS/Images/26t2.jpg?sign=1738846256-pVkfX2RfPRW6L0XqYwHHYPMniSbHDzV1-0-5081fe0464bf79186e2223ad715d748c)
②因为:
![](https://epubservercos.yuewen.com/9D1A5D/21647389701428506/epubprivate/OEBPS/Images/26t3.jpg?sign=1738846256-3JAfRLLt4ubTeUFWUhdXtnW42Oz8o34Z-0-27b4d3e24add7dffd79bebcee01879e0)
可得w⊥(w∧x)。
③很容易证明:
![](https://epubservercos.yuewen.com/9D1A5D/21647389701428506/epubprivate/OEBPS/Images/26t4.jpg?sign=1738846256-GXSSdyyy7I1VQbEbzz3WjN3Iflhr6AZh-0-7e90dfa0ffdc7f328c14a44937634ace)
为此,需要对上述两个表达式进行转化并证明其相等。该行列式的正性表明该三面体(w,x,w∧x)是正三面体。
3)由w、x和w∧x形成的平行六面体体积为:
![](https://epubservercos.yuewen.com/9D1A5D/21647389701428506/epubprivate/OEBPS/Images/26t5.jpg?sign=1738846256-4WOm9RzEJF8jS5tNUGBVePhUeKKsiuu6-0-a21f1dabcea10ab96259ccbd8f0c0c94)
然而,由于w∧x正交于w和x,因此该平行六面体的体积便等于其底面积A乘以高h=||w∧x||,即
![](https://epubservercos.yuewen.com/9D1A5D/21647389701428506/epubprivate/OEBPS/Images/26t6.jpg?sign=1738846256-3oJ1RjF9QYdyEOeNcoiJuVFLixP8lrIZ-0-d260673a84623f10a1a28767606055b8)
令v的上述两个表达式相等,可得A=||w∧x||。
习题1.2参考答案 (雅可比恒等式)
1)已知:
![](https://epubservercos.yuewen.com/9D1A5D/21647389701428506/epubprivate/OEBPS/Images/26t7.jpg?sign=1738846256-FRbKjsjR0V2my82QGkZkPggBlVjRZNxS-0-5119d8c67cdf73d822cff58b15c1511f)
因此,对所有c而言,都有:
![](https://epubservercos.yuewen.com/9D1A5D/21647389701428506/epubprivate/OEBPS/Images/27t1.jpg?sign=1738846256-Q1AlR7Wc7KMX3Txs3aByQKXlSGEhH9CF-0-19c2241c594eac3c7027c66ec09d7d59)
即
![](https://epubservercos.yuewen.com/9D1A5D/21647389701428506/epubprivate/OEBPS/Images/27t2.jpg?sign=1738846256-urwdmteXTpib54hwk0IjRQbbFNMq1mGJ-0-5792a7692dea9013b3bca4060269008b)
2)将上式简写为:
![](https://epubservercos.yuewen.com/9D1A5D/21647389701428506/epubprivate/OEBPS/Images/27t3.jpg?sign=1738846256-FH1DyUAowdwATGBWtdfIWzKMtL7prwnN-0-065229a31e1e9e18918c937446abbfca)
3)已知:
![](https://epubservercos.yuewen.com/9D1A5D/21647389701428506/epubprivate/OEBPS/Images/27t4.jpg?sign=1738846256-qSeobZxDOiwETywYlXsflJNdB0xHak26-0-051f9dfd89b529c8730d03c199b824fa)
因此,对应于一个跟随斜对称矩阵[A,B]=AB-BA无限小的旋转。
综上,如果在一个空间探测器中,只能用惯性盘产生两个跟随A和B的旋转运动,便可生成一个跟随[A,B]的旋转,该无穷小旋转关于B,A,-B,-A,B,A,-B,-A,…交替进行。
4)验证烦琐,在此不做说明。值得注意的是,通过这个结果能够推导出具有加法、括号和标准外积的斜对称矩阵的集合也是一个李代数。
习题1.3参考答案 (范力农公式)
该刚体上的一点x的位置满足状态方程:
![](https://epubservercos.yuewen.com/9D1A5D/21647389701428506/epubprivate/OEBPS/Images/27t6.jpg?sign=1738846256-RxU9AEHEJXasVkk4T1sVXnuyLJmueyHa-0-34ba0d9cf51addb0c18f307e89a6a44a)
式中,w平行于旋转轴Δ,||w||为该实体的旋转速度(单位rad.s-1),通过对该状态方程求积分可得:
![](https://epubservercos.yuewen.com/9D1A5D/21647389701428506/epubprivate/OEBPS/Images/27t7.jpg?sign=1738846256-Vm7YYJsdtlyxXRxW779NUGYse5NNzJ14-0-5fdf414eab5c6c983259aa7c65fb001e)
也可利用在习题1.4中所学的罗德里格斯公式得到该公式。该项性质可以用如下事实解释,即Ad(w)表示一个旋转运动,然而它的导数却表示了该运动的结果(即一个旋转)。
习题1.4参考答案 (罗德里格斯公式)
1)完全可以证明:
![](https://epubservercos.yuewen.com/9D1A5D/21647389701428506/epubprivate/OEBPS/Images/27t8.jpg?sign=1738846256-o9qpFzc2SB1TnzDq5FKidLyOjlvM0siK-0-f365ec20acd15d6f9b4f8d336d4bd39e)
2)该状态方程的解为:
![](https://epubservercos.yuewen.com/9D1A5D/21647389701428506/epubprivate/OEBPS/Images/27t9.jpg?sign=1738846256-kvRxbvVbL117pkG8Kk5lNqxCYkYe6wv5-0-ccecf31f0e540775da624dbc44f74f26)
3)在t时刻,该实体已经旋转了||w||·t的角度,那么当t=1时,它便旋转了角度||w||。因此,绕轴w且角度为||w||的旋转R可由下式给出:
![](https://epubservercos.yuewen.com/9D1A5D/21647389701428506/epubprivate/OEBPS/Images/28t1.jpg?sign=1738846256-smPXWUoegzJVuw6Ab23FU13VRrmZH9is-0-50c2d0baa76adcde6a0c1bae9e344ff3)
4)A的特征多项式为,特征值为0,i||w||,-i||w||。特征值0所对应的特征向量与w共线,由于在旋转轴上点的速度为0,故而这是合乎逻辑的。
5)可以通过特征值对应定理得到R的特征值,因此等价于0,i||w||,-i||w||。
6)一个绕向量w=(1,0,0)且角度α的旋转表达式为:
![](https://epubservercos.yuewen.com/9D1A5D/21647389701428506/epubprivate/OEBPS/Images/28t3.jpg?sign=1738846256-0518kijOOlbPPv8IyWFseu26ynow97yv-0-0240f3dfd4f6684317d8dd9a4f24f778)
7)罗德里格斯公式表明绕向量w角度为φ=||w||的旋转矩阵可由下式表示:
![](https://epubservercos.yuewen.com/9D1A5D/21647389701428506/epubprivate/OEBPS/Images/28t4.jpg?sign=1738846256-JNUbBEVR7z8E73mnR411qs3zAlroWsEz-0-2acb7c03d4e43905210b96758df97cdc)
习题1.5参考答案 (罗德里格斯公式的几何逼近)
1)已知:
![](https://epubservercos.yuewen.com/9D1A5D/21647389701428506/epubprivate/OEBPS/Images/28t5.jpg?sign=1738846256-TwzxkmMgwJRihupiBFKknx0AOIug1uQD-0-f871e3e60d87c3e941b7892294b487fc)
因此,罗德里格斯公式为:
![](https://epubservercos.yuewen.com/9D1A5D/21647389701428506/epubprivate/OEBPS/Images/28t6.jpg?sign=1738846256-CINfxtWxmyVCohmLwgoVL5b9s7nWQwMz-0-1c208dca2c5d00627486fa1d3b101d24)
2)已知:
![](https://epubservercos.yuewen.com/9D1A5D/21647389701428506/epubprivate/OEBPS/Images/28t7.jpg?sign=1738846256-rfbPM4e2PCRwKCNmakGRYiJD1zDRg0PG-0-3a08bd05effba6014334d263331a71f8)
因此:
![](https://epubservercos.yuewen.com/9D1A5D/21647389701428506/epubprivate/OEBPS/Images/28t8.jpg?sign=1738846256-iJ7sUv245bQq18UPGnAownZvP9PbStjP-0-a013297c8ebff23cc1d5c736845186b4)
故而,罗德里格斯公式也可写为:
![](https://epubservercos.yuewen.com/9D1A5D/21647389701428506/epubprivate/OEBPS/Images/28t9.jpg?sign=1738846256-N3NsCuWxColdHSUO0I6v54dyJm0DZ1nn-0-bfd227e505a6f140e51b5798f2265fdd)
可以通过如下式所示的旋转矩阵去表示算子Rn,φ:
![](https://epubservercos.yuewen.com/9D1A5D/21647389701428506/epubprivate/OEBPS/Images/28t10.jpg?sign=1738846256-kvosA3WJlxcjMlRYVLuG81tjoQo2Dimu-0-2d802d85f18b44c5641ba21d1c2def99)
或用其改进形式:
![](https://epubservercos.yuewen.com/9D1A5D/21647389701428506/epubprivate/OEBPS/Images/29t1.jpg?sign=1738846256-XxZi28Yl6xeV2K3aL0qOK2mrJxuV2DDj-0-0fccb262934bdf1ebb3807783cb05255)
3)已知:
![](https://epubservercos.yuewen.com/9D1A5D/21647389701428506/epubprivate/OEBPS/Images/29t2.jpg?sign=1738846256-3HyxURRIpHNFAfSCd1ogCMV5NhHymBFN-0-d547c741b6ad38a89a514cda0a221a4e)
向量Rn,φ·u和形成了菱形(罗德里格斯菱形)的两边,其向量:
![](https://epubservercos.yuewen.com/9D1A5D/21647389701428506/epubprivate/OEBPS/Images/29t4.jpg?sign=1738846256-LncH0I5IlmjA323nDDKVaT3z3u0lHVAm-0-b9942fac5986aa703e67fc49395044a6)
对应于菱形的对角线。
4)该轨迹形式为R(t)=exp(tA)·Ra,且必须要找出一个斜对称的A(使exp(tA)是一个旋转矩阵),对于t=0,有R(0)=Ra,对于t=1,有R(1)=Rb。因此,必须要解出exp(A)·Ra或,其中A是斜对称的。可写为
,但矩阵的对数不是唯一的。在该练习题中,假定所有矩阵均为3×3维的。为找出两个旋转矩阵Ra,Rb之间的插值轨迹矩阵,我们取前一个问题的结果并执行以下操作:
![](https://epubservercos.yuewen.com/9D1A5D/21647389701428506/epubprivate/OEBPS/Images/29t7.jpg?sign=1738846256-35MBdaZZgTMYTnlnHKsqtYdekpc7LqvS-0-dc16fef639e1c2142d6d64006676d91c)
进而可得R(t)=exp(tA)·Ra。在此可清晰地看出,找到一个矩阵A使得的解不唯一。例如,本可采用A=(φ+2kπ)n∧,k≠0,但此时从Ra到Rb必须绕几个弯才行。
5)回顾正弦和余弦公式的麦克劳林级数展开为:
![](https://epubservercos.yuewen.com/9D1A5D/21647389701428506/epubprivate/OEBPS/Images/29t9.jpg?sign=1738846256-sabu8TioYEGPfMqqzIq9uwIbuHBw19Ag-0-8b964ec8e905ca18a641db896d70ed2d)
令H=Ad(n),由于n为矩阵H的一个对应于特征值0的特征向量,则有H(n·nT)=0。此外:
![](https://epubservercos.yuewen.com/9D1A5D/21647389701428506/epubprivate/OEBPS/Images/29t10.jpg?sign=1738846256-vrl71c2zzjsGgEV8ESKA8oSLfUW1fAJI-0-f697e471255bee4caf2abf2b802f32ae)
因此:
![](https://epubservercos.yuewen.com/9D1A5D/21647389701428506/epubprivate/OEBPS/Images/30t1.jpg?sign=1738846256-cRdFdr4Fm2ENGsIDp2BkC1sA5A8IERNR-0-b5b242df93872c932d07057f2efad483)
那么,可将罗德里格斯公式写为:
![](https://epubservercos.yuewen.com/9D1A5D/21647389701428506/epubprivate/OEBPS/Images/30t2.jpg?sign=1738846256-2Yk7427ipvtSoYAmkyzZIKZ83xAQqU1h-0-89d0f2543b5f5c0e0a6d8d7eeecb5310)
即
![](https://epubservercos.yuewen.com/9D1A5D/21647389701428506/epubprivate/OEBPS/Images/30t3.jpg?sign=1738846256-WYWH4jLFsvpuSsRTDenkW6aGDu2MR3lf-0-1433e885af8e208f102f85fd0b214af1)
习题1.6参考答案 (四元数)
1)可得:
![](https://epubservercos.yuewen.com/9D1A5D/21647389701428506/epubprivate/OEBPS/Images/30t4.jpg?sign=1738846256-TpMCQmcDIeyQF2PWPgvi8tvEnrTuC21m-0-439c28a0d041ebcd026c514b9ef20036)
注意,乘法是不可交换的。
2)可得:
![](https://epubservercos.yuewen.com/9D1A5D/21647389701428506/epubprivate/OEBPS/Images/30t5.jpg?sign=1738846256-H7OJjrCmstzCaEk9cc1JnG7cHjMqlqst-0-2848fc11c486d35b1389a3aaf9929d75)
3)因两四元数和
对应于相同旋转,则:
![](https://epubservercos.yuewen.com/9D1A5D/21647389701428506/epubprivate/OEBPS/Images/30t8.jpg?sign=1738846256-l2FDNpgjK6KIPqVGhE9hSXH0k18wrFjl-0-4c0844bc5bbdb3c0de6ac30bb2f9647f)
4)可得:
![](https://epubservercos.yuewen.com/9D1A5D/21647389701428506/epubprivate/OEBPS/Images/30t9.jpg?sign=1738846256-1rGAZysszFBLaP7fl7fMmBBOuIpTFIcW-0-eca841584d2b8d20147a5947da07dede)
![](https://epubservercos.yuewen.com/9D1A5D/21647389701428506/epubprivate/OEBPS/Images/30t10.jpg?sign=1738846256-gHvg9CObM09QKT86g5FVHfiTIHBbxTaF-0-7e2db87e5863c947dcdcc67abe171220)
5)①由于旋转很简单,第一种方法是直接通过手动移动一个简单的对象来得到结果。可获得一个相对于(0,1,0),角度为的旋转。
②关联与建立旋转欧拉矩阵R。可得:
![](https://epubservercos.yuewen.com/9D1A5D/21647389701428506/epubprivate/OEBPS/Images/31t3.jpg?sign=1738846256-Ys1NvmBxfBksnLMwDn87gOhOSq5rbALp-0-6cc0e1eb6b8e29ea380a4732833d0064)
然后取R的一个与特征值λ=1相关联的归一化特征向量v=(0,1,0)T,旋转R可以通过一个绕v的角度为α的旋转得到,可利用式(1.9)计算角度α:
![](https://epubservercos.yuewen.com/9D1A5D/21647389701428506/epubprivate/OEBPS/Images/31t4.jpg?sign=1738846256-2K1YyRBRulEGgR5HevQPZi9OZQyw1muF-0-3e4be2380747426ab0fa80731bfbc043)
式中,所选符号满足eα·v∧=R,可得。
③在此,利用四元数法可得:
![](https://epubservercos.yuewen.com/9D1A5D/21647389701428506/epubprivate/OEBPS/Images/31t6.jpg?sign=1738846256-OS1lfAoibDsY9XzgVSRIWoehn4pZF1jk-0-87011314191c8189b95bc77f12965324)
运用所有方法,可得一个绕v=(0,1,0)角度为的旋转。
习题1.7参考答案 (舒勒振荡)
1)状态向量为,为了实现水平运动,则需一个水平力f,根据动力学基本定理,可得:
![](https://epubservercos.yuewen.com/9D1A5D/21647389701428506/epubprivate/OEBPS/Images/31t8.jpg?sign=1738846256-rVYLyeszxYgvjwOnizkqf5nUHz2JWrEI-0-7b298111f2976ddeb1bbd897c09c896a)
式中,且f=2ma。由于
,则该系统的状态方程可写为:
![](https://epubservercos.yuewen.com/9D1A5D/21647389701428506/epubprivate/OEBPS/Images/31t11.jpg?sign=1738846256-a9kspA86JeE4hjNagjIj7Y4MFOKDPC4w-0-50d59723715912f8a8d1f5faf2018687)
2)如果钟摆保持水平,则对于α=0,便有。即:
![](https://epubservercos.yuewen.com/9D1A5D/21647389701428506/epubprivate/OEBPS/Images/32t1.jpg?sign=1738846256-tomD9nJfbQzUeNsaGJk28xFjL7Y5QPnk-0-6524b932e9a0b0ac69b79172e9575dcc)
或将其等价为:
![](https://epubservercos.yuewen.com/9D1A5D/21647389701428506/epubprivate/OEBPS/Images/32t2.jpg?sign=1738846256-pzj2gXrVFBBOEY3MMXR7w8dTHhYySfKT-0-952514a5a2eb052d999c424c48eee849)
因此,必须使其满足方程。求解该方程可得:
![](https://epubservercos.yuewen.com/9D1A5D/21647389701428506/epubprivate/OEBPS/Images/32t4.jpg?sign=1738846256-g9IEjqhXVKoE6Q6sa5L51ZeDW4zM5KAN-0-34d5082220cd4541bfa30cdb62bbc637)
当1=1时,可得:
![](https://epubservercos.yuewen.com/9D1A5D/21647389701428506/epubprivate/OEBPS/Images/32t6.jpg?sign=1738846256-a77kOEudUngmmwzDGegaQ0L5txOHzzup-0-5f222b4364d8692eb3761fe674a522b0)
3)描述该振荡的方程为:
![](https://epubservercos.yuewen.com/9D1A5D/21647389701428506/epubprivate/OEBPS/Images/32t7.jpg?sign=1738846256-sHS2V5sKDy4KWYpM3psHFuTLYzv69hmt-0-ecbf240136435606aed81f642e9f705f)
当a=0时,可得:
![](https://epubservercos.yuewen.com/9D1A5D/21647389701428506/epubprivate/OEBPS/Images/32t8.jpg?sign=1738846256-FIebDgo8iu1mqlWgbqhbnnMdP3gREQrD-0-696e08dad5b3a4e6e80744a1fa9d2e4f)
该式为一个长=r的钟摆方程。通过对其线性化可得其特征多项式为
,因此脉冲为
。故而,该舒勒周期等于:
![](https://epubservercos.yuewen.com/9D1A5D/21647389701428506/epubprivate/OEBPS/Images/32t12.jpg?sign=1738846256-5Qi1UUNrVZJPyGVtsGBe7bvmnwhlhg6e-0-2502976a6b373c8ec23dc783a8e70600)
4)程序如下:
![](https://epubservercos.yuewen.com/9D1A5D/21647389701428506/epubprivate/OEBPS/Images/32t13.jpg?sign=1738846256-ADkEbijA1JmaKtsaFLLSFk27uhvpD0OD-0-095201c6ebb21e03036c3213569e635d)
值得注意的是,对于初值而言,该钟摆总是指向地球中心,否则,它便振荡并将该振荡保持在舒勒频率上。可以用现代惯性单元观测该振荡,并有利用其他惯性传感器获取的信息对其进行补偿的方法。
习题1.8参考答案 (制动检测器)
1)已知:
![](https://epubservercos.yuewen.com/9D1A5D/21647389701428506/epubprivate/OEBPS/Images/32t15.jpg?sign=1738846256-SmuTxbR1GTEOUilX1fq8O0QRCoYDTVAP-0-345d094a6801fcb4c351bfa70cebac24)
将其表示在坐标系R0内为:
![](https://epubservercos.yuewen.com/9D1A5D/21647389701428506/epubprivate/OEBPS/Images/33t1.jpg?sign=1738846256-QpVh9eqIGEDxtYfSUW4Jl70SpmvaG5D5-0-30083b28158465c5d58f30b4c6368144)
整理为:
![](https://epubservercos.yuewen.com/9D1A5D/21647389701428506/epubprivate/OEBPS/Images/33t2.jpg?sign=1738846256-P63qLjScBZ6olG1THPmL6erqUp51LtgD-0-15ffb8a8127cd6b71516d547d28ada28)
2)证明:
![](https://epubservercos.yuewen.com/9D1A5D/21647389701428506/epubprivate/OEBPS/Images/33t3.jpg?sign=1738846256-qG8xp1HI1GTPiVZwlRCH8BZGKCMlPSIs-0-5f69df8c8e48e5e3d97873bacad917aa)
3)在坐标系R0内,可将向量u表示为:
![](https://epubservercos.yuewen.com/9D1A5D/21647389701428506/epubprivate/OEBPS/Images/33t4.jpg?sign=1738846256-w3Om8JK7xTQB7Rp3tR4R3fu6JzDgSSle-0-9e86d8214da284dea1feeb1cfb6fef75)
因此:
![](https://epubservercos.yuewen.com/9D1A5D/21647389701428506/epubprivate/OEBPS/Images/33t5.jpg?sign=1738846256-sjpOj9VCRHent5CeHS9f1rkqyurJtS9v-0-121491ac806dc574bc8e0377d4ec88df)
4)已知:
![](https://epubservercos.yuewen.com/9D1A5D/21647389701428506/epubprivate/OEBPS/Images/33t6.jpg?sign=1738846256-wothbnU9xlfaVnQg8vA74XEe6KCHetbp-0-a4cf53ae87df74adc2cf7493fcfa4d99)
因此:
![](https://epubservercos.yuewen.com/9D1A5D/21647389701428506/epubprivate/OEBPS/Images/33t7.jpg?sign=1738846256-493qjNkDaqO5u6eds5TFlPaT7N2A9xr3-0-8c9e2874a2c55a9b09371613333e8192)
然而:
![](https://epubservercos.yuewen.com/9D1A5D/21647389701428506/epubprivate/OEBPS/Images/33t8.jpg?sign=1738846256-z9yBu8UNvN1vZYKfXiuKDZW4mgewIdT0-0-8a3e07c959dea30b071bcdab0f53f583)
可得:
![](https://epubservercos.yuewen.com/9D1A5D/21647389701428506/epubprivate/OEBPS/Images/34t1.jpg?sign=1738846256-c9Xs8Egxb9Gl3cbRJjlRT5SfWFrkWwGX-0-558d5b69bcd2c8e1f47f22bfbbd3746a)
5)如果满足下述条件,则表示前车正在制动:
![](https://epubservercos.yuewen.com/9D1A5D/21647389701428506/epubprivate/OEBPS/Images/34t2.jpg?sign=1738846256-vPNnGvEhPHyILjmpbvUHGYZ8cfHHib5W-0-6436158cb48519ab977d0955952df33b)
即满足条件:
![](https://epubservercos.yuewen.com/9D1A5D/21647389701428506/epubprivate/OEBPS/Images/34t3.jpg?sign=1738846256-z3JNGjjGdD8HS5BBGktbztJaIUgooEAC-0-256aa90b5a3e49e052a72fe465564855)
习题1.9参考答案 (水下机器人建模)
该位置向量的导数可由下式得到:
![](https://epubservercos.yuewen.com/9D1A5D/21647389701428506/epubprivate/OEBPS/Images/34t4.jpg?sign=1738846256-QHjUuORstxhG5h3oKQ9Cq87j7AEakYSc-0-71c31c8c45c6a8521e2a391c5f87b84d)
式中,i1对应矩阵(1.9)的第一列。结合方程(1.12),可将潜艇的状态方程写为:
![](https://epubservercos.yuewen.com/9D1A5D/21647389701428506/epubprivate/OEBPS/Images/34t5.jpg?sign=1738846256-UAyf8eh6z3jYKaCotU5mXLHXNL3oJYcd-0-a8277d4c99e71f5c1ba6c752a3f1c9f3)
此时,便得到了一个运动学模型(即其中没有力或力矩),其中并没有参数,因此如果该水下机器人很结实(即不能被扭曲)且其轨迹与机器人轴线相切,便可认为该模型是正确的。这样的模型将用到非线性控制方法如将在第2章提及的反馈线性化。虽然这类方法对于一个很小模型误差的鲁棒性确实很差,但对系统精确模型已知的情况下却非常有效。
习题1.10参考答案 (三维机器人图形)
1)略
2)为绘制在状态x=(px,py,pz,v,φ,θ,ψ)下的机器人图像,构建模式矩阵:
![](https://epubservercos.yuewen.com/9D1A5D/21647389701428506/epubprivate/OEBPS/Images/34t6.jpg?sign=1738846256-eV7DUiVWmrWjcwBvNCz3rMsU9foRuuQ1-0-d1d5335c314e1060b71f50be4d5a3983)
并计算转换后的模式矩阵(待绘制):
![](https://epubservercos.yuewen.com/9D1A5D/21647389701428506/epubprivate/OEBPS/Images/34t7.jpg?sign=1738846256-ribTsbIOsUZKDHKMIqhQsMX3CypJxblh-0-1ed538346f5e41a558345747029962be)
绘制三维图形的MATLAB程序如下:
3)采用图1.19所示的欧拉积分法对初始向量x(0)=(-5,-5,12,15,0,1,0)T和控制变量u=(0,0,0.2)T进行仿真。该仿真模拟将在习题2.4中进行,以执行机器人轨迹的控制。
![](https://epubservercos.yuewen.com/9D1A5D/21647389701428506/epubprivate/OEBPS/Images/1a19.jpg?sign=1738846256-uPTbqaZUJ8rXrAqGnfg1naBHhwcr4ksT-0-876bee56e5556957a66c67e31c7c9147)
图1.19 水下机器人的仿真(有关此图的彩色版本,见www.iste.co.uk/jaulin/robotics.zip)
习题1.11参考答案 (机械手)
绘制机械手时必须一个接一个进行,为此,必须建立基于向量v的平移和绕w角度||w||的旋转。由如下两个矩阵表示:
![](https://epubservercos.yuewen.com/9D1A5D/21647389701428506/epubprivate/OEBPS/Images/35t1.jpg?sign=1738846256-YzSHlRVfWZjCmSRtDGXbmJ6Ae3x1vlt8-0-6b7ec670e8e3ae3b03a3dea5c2041668)
在该题中,需要沿z轴平移长度r,沿x轴平移长度d,围绕y轴旋转α,旋转θ。它们分别由4×4矩阵给出:
![](https://epubservercos.yuewen.com/9D1A5D/21647389701428506/epubprivate/OEBPS/Images/35t2.jpg?sign=1738846256-PXuwVxVmiEcdTF2ksKAx7XLtYO1hyt8j-0-bcb8a84ed4e40e1b2adaab5d319331c1)
在坐标系q(其组成部分为关节坐标)中的机器人的七个手臂可以绘制如下:
![](https://epubservercos.yuewen.com/9D1A5D/21647389701428506/epubprivate/OEBPS/Images/35t3.jpg?sign=1738846256-sYtsSxSsaFFFtE1nbbR9xXtuT5Bzh4ZR-0-865915e469f3de4c4fbb97ab14cd4813)
每个手臂均是用两个齐次矩阵,j
{1,2,…,7}对绘制的。图1.20对应于具有以下参数向量的机器人的仿真模拟:
![](https://epubservercos.yuewen.com/9D1A5D/21647389701428506/epubprivate/OEBPS/Images/36t1.jpg?sign=1738846256-2CEm4oKLT4N87T7EQLrgmM1yQf5RKaBK-0-9ddb19237ccc66a7184d961725ebff2d)
习题1.12参考答案 (浮轮)
1)考虑欧拉旋转方程:
![](https://epubservercos.yuewen.com/9D1A5D/21647389701428506/epubprivate/OEBPS/Images/36t2.jpg?sign=1738846256-RqONwlNMMTWzVD7lRDy6GT1BrSItBJ3W-0-ffbaf4ff41fc651a2e456e66778cd5dc)
式中,扭矩τr=0且浮轮没有加速度。由式(1.12)可得:
![](https://epubservercos.yuewen.com/9D1A5D/21647389701428506/epubprivate/OEBPS/Images/36t3.jpg?sign=1738846256-YWUhT8nBBLk9el8K3CmtyOOYiKK27cfG-0-2a2992903fd6c7ee4703814101b04611)
![](https://epubservercos.yuewen.com/9D1A5D/21647389701428506/epubprivate/OEBPS/Images/1a20.jpg?sign=1738846256-d0ai4g5dUAwpQlGrVNVAi5wbexRNfJmo-0-c6b52d332b31990d718ede1b910d17e6)
图1.20 机械手仿真模拟
2)对于仿真模拟,取:
![](https://epubservercos.yuewen.com/9D1A5D/21647389701428506/epubprivate/OEBPS/Images/36t4.jpg?sign=1738846256-t3ijIWVC47L6oX3sQyVpV5gmEy1XC9kA-0-fd43a5c4d69f9f2fe8fe7e4805d6ec2a)
其结果如图1.21所示,轮子相对于px平移,可从px阴影(黑色)中看到旋转轴振荡,这便对应于该进动。
3)已知:,因此:
![](https://epubservercos.yuewen.com/9D1A5D/21647389701428506/epubprivate/OEBPS/Images/36t6.jpg?sign=1738846256-EUpU4U2bOFiXZjrz3CS8VgAHf0xQjHdT-0-46cbcbed81665cba1d26ce22295a1803)
![](https://epubservercos.yuewen.com/9D1A5D/21647389701428506/epubprivate/OEBPS/Images/1a21.jpg?sign=1738846256-VP5b4LQ4A0DZQUUOXXtdkAdp6JGtCq4o-0-4c03393df0c6d0aa1da701290020dda1)
图1.21 无转矩进动车轮的运动(有关此图的彩色版本请参见www.iste.co.uk/jaulin/robotics.zip)
此外:
![](https://epubservercos.yuewen.com/9D1A5D/21647389701428506/epubprivate/OEBPS/Images/36t7.jpg?sign=1738846256-0Wv8PGBrgXcHcCeq1kCjQb5Ik0vMHLty-0-4856ec6131b8be8a2b626fd3901c55df)
4)使用SYMPY库编写以下Python代码:
![](https://epubservercos.yuewen.com/9D1A5D/21647389701428506/epubprivate/OEBPS/Images/37t1.jpg?sign=1738846256-R3fJNqjdotbrncuJzSYmyYqRvxmF2sKD-0-32e7470a04ddea6fe8c0d46ce025a2ec)
x0点处的矩阵J如图1.22所示。
可通过图1.23中的图示来理解带零的黄色块,弧表示差动延迟,例如,节点vr和p之间的弧意味着在代数上依赖于vr。
![](https://epubservercos.yuewen.com/9D1A5D/21647389701428506/epubprivate/OEBPS/Images/1a22.jpg?sign=1738846256-OmSh8npU18eX2sLT66qpj2C8xgOPQ21E-0-1e01a377f5b5e8cb62323cb3798e2d6f)
图1.22 x0点处演化函数的雅可比矩阵(有关此图的彩色版本,请参见www.iste.co.uk/jaulin/robotics.zip)
![](https://epubservercos.yuewen.com/9D1A5D/21647389701428506/epubprivate/OEBPS/Images/1a23.jpg?sign=1738846256-rFt23RYgyKwtcXdTDY3NEqBjuVGFoGue-0-7b6a81d1d5d2b1b7e0e90955af2e7879)
图1.23 浮轮差动延迟图(有关此图的彩色版本,请参见www.iste.co.uk/jaulin/robotics.zip)
矩阵J是分块三角形的,可以很容易地计算出特征多项式,由下式给出:
![](https://epubservercos.yuewen.com/9D1A5D/21647389701428506/epubprivate/OEBPS/Images/38t3.jpg?sign=1738846256-jim2Ctd1o075kYGBnUqP9cpXiYpTykfx-0-0f853112a859f2b951766d7a746d624d)
当不存在进动时,项与事实情况一致,轮子以||wr||脉冲绕wr旋转,
和
对应于该进动。
如果轮子不是完全实心的,内部摩擦会减弱进动,旋转轴将与I的一个特征向量对齐,该向量可以是车轮平面的一个向量,也可以是车轮的轴(与车轮平面正交)。
习题1.13参考答案 (惯性系中的舒勒振荡)
1)因为地球静止不转动,则有:
![](https://epubservercos.yuewen.com/9D1A5D/21647389701428506/epubprivate/OEBPS/Images/38t7.jpg?sign=1738846256-WNpqHl0iw1WvFWrm3ZU5AeReMzTsPTFx-0-f3e6192ca98469aa6b20d869256d0f4b)
2)R2的所有欧拉角都是常数(对于R1)并且等于零,且不再作为状态变量出现。欧拉矩阵R(φ,θ,ψ)为常数。R2的状态方程变为:
![](https://epubservercos.yuewen.com/9D1A5D/21647389701428506/epubprivate/OEBPS/Images/38t8.jpg?sign=1738846256-tbQGnft2lVM6wl5oG73bE0GksbX2SsCo-0-88536c6ef84a67419e14a9f443ea5a4f)
可以将其写为:
![](https://epubservercos.yuewen.com/9D1A5D/21647389701428506/epubprivate/OEBPS/Images/39t1.jpg?sign=1738846256-6aay2mkqwXTsORdI1Jh4WFYm4fgra88U-0-1f15bc0d5fa20bc887d6f4cae8574d43)
3)所得到的轨迹如图1.24所示。从图中观察到一些振荡,称为舒勒振荡。
4)z=0,x=r,可得:
![](https://epubservercos.yuewen.com/9D1A5D/21647389701428506/epubprivate/OEBPS/Images/39t2.jpg?sign=1738846256-jJpyXtBpo3lpm7BA6blI8B3k9KxIhPbh-0-44ca84fb8998bc83fd1069479b1d9f74)
特征值为,由于在0中有两个根,所以这个系统存在一些振荡,是不稳定的。
5)实际上,惯性单元没有完全初始化,因此便可找到一条与R2相似的轨迹,而对于R1而言是固定的。由于误差很小,线性近似是很现实的。如图1.25所示,惯性单元内部的积分方法返回一些不需要的振荡,对应于一个不是实际的解。这些振荡对应于一个为的舒勒周期。对于许多应用(例如在飞机上),大家知道这样的振荡是虚拟的,可以通过改进积分的方法来抑制这些舒勒振荡。
![](https://epubservercos.yuewen.com/9D1A5D/21647389701428506/epubprivate/OEBPS/Images/1a24.jpg?sign=1738846256-Cohosh6o9u7Gm5gPMkozoptgNptk5tHQ-0-2409fdfc45bad14ff0d6b34a209b2b40)
图1.24 轨迹涂成蓝色的机器人R2和固定在o1中的机器人R1的转速和加速度相同
习题1.14参考答案 (控制用李氏括号)
1)可得:
![](https://epubservercos.yuewen.com/9D1A5D/21647389701428506/epubprivate/OEBPS/Images/39t5.jpg?sign=1738846256-966KckRKpuRMhQFZGxzki9WcMMhKfcJe-0-ccd3927e3579abbf9cc511f008d368be)
2)在不丧失一般性的情况下,对t=0给出其证明,并将使用以下符号:
![](https://epubservercos.yuewen.com/9D1A5D/21647389701428506/epubprivate/OEBPS/Images/39t6.jpg?sign=1738846256-aLKutM5vfy8IIZMwLinucjDMMpUVDq0q-0-29f31a63be57ed84c02b88e08df2cd12)
![](https://epubservercos.yuewen.com/9D1A5D/21647389701428506/epubprivate/OEBPS/Images/1a25.jpg?sign=1738846256-4vt1MrsGyunh3rXsIIzGZW5PapScO1XG-0-51d19d46c2cdb2b4b1cb8ab38393200c)
图1.25 惯性装置返回的假周期轨迹,感觉和R1一样是静止的。相应的测量加速度涂成红色。b)图对应于R1的放大(有关此图的彩色版本,请参见www.iste.co.uk/jaulin/robotics.zip)
对于给定的t和一个小的δ,有:
![](https://epubservercos.yuewen.com/9D1A5D/21647389701428506/epubprivate/OEBPS/Images/40t2.jpg?sign=1738846256-frNaCaWHmCfAgAo6u532M2roJtk8PXzg-0-812797ca7b307916eea80c9df827066f)
其中:
![](https://epubservercos.yuewen.com/9D1A5D/21647389701428506/epubprivate/OEBPS/Images/40t3.jpg?sign=1738846256-zIchQGK1dYqZWTM8rjyj0jwgmz1W8cBZ-0-b897b729606e9b5e0a4416739191385a)
因此:
![](https://epubservercos.yuewen.com/9D1A5D/21647389701428506/epubprivate/OEBPS/Images/40t4.jpg?sign=1738846256-XGKTw8ig6bcVe6dOClZa2y5JdlnE1ZGY-0-1e53b4c75768d9e9044b1885e75e26a0)
可得:
![](https://epubservercos.yuewen.com/9D1A5D/21647389701428506/epubprivate/OEBPS/Images/40t5.jpg?sign=1738846256-HHMUV2PEoMNCeR30v0ufSlc4x8VyDyoQ-0-827c7a4f0e4780bdb4f655a737f46600)
相加可得:
![](https://epubservercos.yuewen.com/9D1A5D/21647389701428506/epubprivate/OEBPS/Images/40t6.jpg?sign=1738846256-dyNCg8AhZRkgNDsolS8Okszj6zlc9X6J-0-4fb7cd151c6fa948869c4e45344c8970)
此时:
![](https://epubservercos.yuewen.com/9D1A5D/21647389701428506/epubprivate/OEBPS/Images/40t7.jpg?sign=1738846256-YqA78wccKSXrWwcmItsa2mvRddBU7zRe-0-686ca882ffba1c481e3636f773baeef0)
因此,
![](https://epubservercos.yuewen.com/9D1A5D/21647389701428506/epubprivate/OEBPS/Images/41t1.jpg?sign=1738846256-ctEDXY80bIFcZDwpfhvgU1BspE4Y4Nm6-0-7140978a501cb2887ce64b3fe806869c)
同理可得:
![](https://epubservercos.yuewen.com/9D1A5D/21647389701428506/epubprivate/OEBPS/Images/41t2.jpg?sign=1738846256-KalVgomPV6J2U68MuVhoHiPk5mqk1WIG-0-429e7a3bc8c07ac41107677ee9a32521)
这个结果可以通过重写δ→-δ,f→-g,g→-f,A0→-B0,B0→-A0直接从式(1.19)中获得,因此:
![](https://epubservercos.yuewen.com/9D1A5D/21647389701428506/epubprivate/OEBPS/Images/41t3.jpg?sign=1738846256-jNNBkGgzE3UAQFmb607ULse18CFE1mXz-0-1ff0d0697ac2e672b8d76d234a4a1657)
其结果是,使用周期序列,便可以沿着[f,g]方向移动。
3)已经证明,在4δ的时间周期内,我们向[f,g]方向移动了[f,g]δ2。这意味着我们遵循这个无穷小的场。将循环序列乘以标量α
R等于用α乘以f,g。那么,不得不用
乘以这个序列。如果º为负,则必须改变序列的方向。因此,循环序列为:
![](https://epubservercos.yuewen.com/9D1A5D/21647389701428506/epubprivate/OEBPS/Images/41t6.jpg?sign=1738846256-53VJQdJPlgHOLGYCavmDXk1Y2QYdWsE4-0-f3689f51c260f200216d30f4cd2c6c79)
式中,ε=sign(v)更改序列的方向(ε=1为顺时针方向,ε=-1为逆时针方向)。
4)如果想要跟踪a1f+a2g+a3[f,g],则须按该序列:
![](https://epubservercos.yuewen.com/9D1A5D/21647389701428506/epubprivate/OEBPS/Images/41t7.jpg?sign=1738846256-14K7K5Usqif5D1uGAj4P2X3vRfWrilxJ-0-94a5d3b0a4d7efd90d8de3af18442c09)
式中,,且ε=sign(v)。
5)如果令x=(x,y,θ),则有:
![](https://epubservercos.yuewen.com/9D1A5D/21647389701428506/epubprivate/OEBPS/Images/41t9.jpg?sign=1738846256-ZaLAA9i0cwy2dTAQuTCBKodUeRa8EEXy-0-0c4e47bf57fa5d94d08bc32d10f7d49e)
可得:
![](https://epubservercos.yuewen.com/9D1A5D/21647389701428506/epubprivate/OEBPS/Images/42t1.jpg?sign=1738846256-c5WrDscEsTZsCR9e60FtbOFBMHaeuOcT-0-0ab7d2357490f5e3f78532ece8952f97)
此时便可横向移动汽车了。
6)如果把循环序列作为控制器,可得:
![](https://epubservercos.yuewen.com/9D1A5D/21647389701428506/epubprivate/OEBPS/Images/42t2.jpg?sign=1738846256-UqiIz6twWpsvtfQ8ZvWFx1r3v8dTcW5S-0-e4bb2aec827d818ff3113652d4641884)
针对a=(0.1,0,0),a=(0,0,0.1),a=(-0.1,0,0),a=(0,0,-0.1)做了四个仿真模拟。取初始向量x(0)=(0,0,1),t[0,10],dt=0.01,便可得到图1.26所示的结果。经过观察,在每次模拟之后,到原点的距离大约为0.1×10=1。这与f(x)和[f,g]的范数等于1的事实一致。在此,并未给出a=(0,±0.1,0)的仿真,因为没有位移:汽车自己旋转。
7)可得:
![](https://epubservercos.yuewen.com/9D1A5D/21647389701428506/epubprivate/OEBPS/Images/42t3.jpg?sign=1738846256-ZoqFPkOhaYzFz7b8ai9MKPXEDUwnBenN-0-f9359e27b54b60ad38f3d142f6f2dcdd)
取可得
,式中
。
![](https://epubservercos.yuewen.com/9D1A5D/21647389701428506/epubprivate/OEBPS/Images/1a26.jpg?sign=1738846256-oANWtngc9VGLf8T8S0tVGte8lDsBuia0-0-11bb546b261e6b2e1a6d1690a77fd9da)
图1.26 a)基于李氏括号技术的控制器仿真,框架为[-1,1]×[-1,1]。b)相同的图片,但框架为[-0.2,0.2]×[-0.2,0.2]。为了避免图片中的重叠,这辆车的尺寸缩小了1/1000。前后亚通道的长度约为10cm(有关此图的彩色版本,请参见www.iste.co.uk/jaulin/robotics.zip)
对于序列所需的方向:=(1,0,0),
=(−1,0,0),
=(0,−1,0),
=(0,1,0)。可得图1.27所示的结果。
![](https://epubservercos.yuewen.com/9D1A5D/21647389701428506/epubprivate/OEBPS/Images/1a27.jpg?sign=1738846256-SuxGZoD5UG4KdYDYCITU0wpT8rJU8Iv1-0-b743378b089793632fd2f1e0fe99f7dc)
图1.27 a)汽车从0向所有主要方向行驶。框架为[-1,1]×[-1,1]。b)相同的图片,但框架为[-0.2,0.2]×[-0.2,0.2](有关此图的彩色版本,请参见www.iste.co.uk/jaulin/robotics.zip)
习题1.15参考答案 (跟踪赤道)
1)从一帧到另一帧的旋转矩阵为Rij=RiTRj,可得:
![](https://epubservercos.yuewen.com/9D1A5D/21647389701428506/epubprivate/OEBPS/Images/43t2.jpg?sign=1738846256-XJ2nIYkCixal4rqIhJoxPAi42nbaa9qo-0-3d67cee00ee4dcaab0a8941fb9bb8efc)
2)式(1.13)所示的运动学方程为:
![](https://epubservercos.yuewen.com/9D1A5D/21647389701428506/epubprivate/OEBPS/Images/43t3.jpg?sign=1738846256-3wNhDzMg7dQbFvSDtVtsIfI4Kt1ZcjSl-0-358a127c16e7d405ae7d07ee0b85ce7d)
在仿真模拟中(见图1.28),可观察到轨道对应于一个椭圆,这与卫星的行为是一致的。物体的旋转是由初始条件引起的。
![](https://epubservercos.yuewen.com/9D1A5D/21647389701428506/epubprivate/OEBPS/Images/1a28.jpg?sign=1738846256-yFKZ84ITGIi8lATL6fiIfGC0uY7quRgG-0-0e891461677b0f87d9ea9262060f334e)
图1.28 该机器人像卫星一样绕着地球转(有关此图的彩色版本,请参见www.iste.co.uk/jaulin/robotics.zip)
3)动态模型由运动学模型组成,可在其中添加以下状态方程以生成输入a3,w3(见图1.29):
![](https://epubservercos.yuewen.com/9D1A5D/21647389701428506/epubprivate/OEBPS/Images/43t4.jpg?sign=1738846256-5AR6iPr4K1gNaTd55vcyxVL7dcgTjxZN-0-a27e909285bd097a5f41263b6e2c48d8)
这个动态(左)块在状态变量中有w3。
在此来解释第一个等式:
![](https://epubservercos.yuewen.com/9D1A5D/21647389701428506/epubprivate/OEBPS/Images/43t5.jpg?sign=1738846256-sjBr9z32BseBVdwjttuv47FzEX8FSmAp-0-4ed8b133123432cc49d39fad26935a63)
由该摩擦项可得,机器人将停止相对于水的旋转,从而收敛到地球的旋转方程上。对于这个摩擦力,应该加上来自方向舵或螺旋桨的旋转。
第二个方程由三项组成:
![](https://epubservercos.yuewen.com/9D1A5D/21647389701428506/epubprivate/OEBPS/Images/43t6.jpg?sign=1738846256-rki9znHqo2BfeGvLquSRQ4CWoBs8uMfC-0-022c715d93795c35e4eacfb294fdd8f6)
①由于摩擦而产生加速度。作为第一近似,可以假设加速度与机器人和流体之间的速度差成正比。由于流体的速度为vf=wE∧p,可得摩擦力所引起的加速度,在R3坐标系下近似为。
②流体在p处的加速度为:
![](https://epubservercos.yuewen.com/9D1A5D/21647389701428506/epubprivate/OEBPS/Images/44t2.jpg?sign=1738846256-mTmdjHHEqSlbGHsCOJe2aDPlEqRC1dNF-0-be80c75d298032dc51b50a5cccf49362)
如果机器人相对于流体是静止的,并且具有与流体相同的密度,那么它将具有阿基米德力产生的加速度。现在,由于重力,将测量R3坐标系下加速度
。
③由螺旋桨产生的加速度ua3表示在机器人坐标系R3。
![](https://epubservercos.yuewen.com/9D1A5D/21647389701428506/epubprivate/OEBPS/Images/1a29.jpg?sign=1738846256-FYoAlUYAdHCAHkbijZXVSzOzCFMZ0RSr-0-6b1b73fdc41dda7d8e25bd6c6c5ed85f)
图1.29 动力学模型
4)为了控制机器人的方向,考虑了一种位姿场方法,即在每个点p上关联一个机器人试图满足的姿态(用旋转矩阵R4表示)。例如,如果我们想沿着赤道从西到东,则可选择一个位姿场:
![](https://epubservercos.yuewen.com/9D1A5D/21647389701428506/epubprivate/OEBPS/Images/44t5.jpg?sign=1738846256-2fyOZ4Yz0HE0jUtfrNQ6jKTkP24BiHdT-0-859c6dbdc47859413baf646bf4264e73)
然后,为使R3近似于R4(p)的控制选择旋转向量,可得(见式(1.6)):
![](https://epubservercos.yuewen.com/9D1A5D/21647389701428506/epubprivate/OEBPS/Images/44t6.jpg?sign=1738846256-N0Oj22w8ybOVBSG1W2PXxUKgYuIvJ8Br-0-0140f83fbb58604e9da63d9f7407d5c4)
其中,,
。相应仿真如图1.30所示。
![](https://epubservercos.yuewen.com/9D1A5D/21647389701428506/epubprivate/OEBPS/Images/1a30.jpg?sign=1738846256-Opr3QTCbGWbXupVZA9E0ssHDIZOJhrjw-0-640dbd827b479f4a0be0809b21c9815e)
图1.30 机器人沿着赤道向东行驶(有关此图的彩色版本,请参见www.iste.co.uk/jaulin/robotics.zip)