Aonad 2 / 9

Faisnéise Saorga i Róbataic agus Rialú Gluaisne

Gnóthachain:

  • Cumas fadhbanna cinéamaitice chun cinn/inbhéartacha agus pleanála conaire a shocrú agus a réiteach le cabhair ó AI
  • Cumas fithis sábháilte a tháirgeadh trí chomhtheorainneacha róbait, srianta luais agus luasghéaraithe a thabhairt mar chomhthéacs don leid
  • Cumas an t-aschur cineamatach agus trajectory arna dtáirgeadh ag an AI a fhíorú go huimhriúil agus go fisiciúil

An gripper ag deireadh lámh robot a thabhairt go pointe áirithe sa spás, i dtreoshuíomh áirithe; Fuaimeann sé simplí, ach tá cothromóidí cineamatacha, teorainneacha comhpháirteacha, uathúlachtaí agus pleanáil trajectory taobh thiar de. Anseo, úsáideann an t-innealtóir meicitreonaic triantánacht, ailgéabar líneach agus teoiric rialaithe le chéile. Is cabhair chumhachtach í an fhaisnéis shaorga sa phróiseas seo: féadann sí cothromóidí cineamatacha chun tosaigh a bhunú, cineálacha cur chuige réitigh a mholadh do chinéimeolaíocht inbhéartach, paraiméadar a dhéanamh ar ruthag de réir srianta treoluas/luasghéaraithe. Mar sin féin, tá róbataic ar cheann de na réimsí sa mheicitreonaic leis an riosca fisiceach is airde; Má sheoltar seicheamh uillinn a ghineann an AI chuig an robot gan fíorú, féadfaidh an lámh bualadh leis féin, leis an gcomhshaol, nó leis an oibreoir. San aonad seo feicfimid conas cinéitic agus pleanáil conaire a bhunú agus a fhíorú le AI.

Cinématics Ar Aghaidh agus Inbhéartach

Cinématics ar aghaidh (FK): Suíomh agus treoshuíomh an chríoch-éifeachtaí a fháil más eol na huillinneacha comhpháirteacha. Níl ach réiteach amháin ann, tá sé díreach.

Cinématics inbhéartach (IK): Má tá suíomh inmhianaithe na feidhme deiridh ar eolas, faigh na hailtuillinneacha a sholáthróidh é seo. De ghnáth bíonn níos mó ná réiteach amháin aige (cosúil le huillinneacha suas/síos), uaireanta níl aon réitigh aige (pointe dosroichte), uaireanta bíonn réitigh gan teorainn aige (singularity).

coincheap

ionchur

aschur

Líon na réitigh

Cineamaitic ar aghaidh

uillinneacha comhpháirteacha

Sárshuíomh/treoshuíomh

singil

Cinéitic inbhéartach

Sárshuíomh/treoshuíomh

uillinneacha comhpháirteacha

Iolrach/aon/gan teorainn

Maidir le géag phlánach dhá chomhpháirteach, is féidir cinéamaitic inbhéartach a chur ar bun san AI agus a fhíorú de láimh mar seo a leanas:

allmhairiú numpy mar npdef inverse_kinematik_2r(x, y, L1, L2): "" IK don ghéag plánach 2 chomhpháirteach. Filleann sé uillinneacha ina raidian (réiteach síos uillinn).""" r2 = x**2 + y**2 # Seiceáil inrochtaineachta: an pointe sa spás oibre é? más rud é np.sqrt(r2) > (L1 + L2) nó np.sqrt(r2) < abs(L1 - L2): ardaigh ValueError ("Tá an pointe lasmuigh den spás oibre inrochtana") cos_t2 = (r2 - L1**2 - L2**2) / (2 * L1 * L2) cost_t2 = np.0, #2 - 2 = costas 2 = 0.0 # 2 = costas slándáil uimhriúil t2 = np.arccos(cos_t2) # elbow síos t1 = np.arctan2(y, x) - np.arctan2(L2*np.sin(t2), L1 + L2*np.cos(t2)) tuairisceán np.degrees(t1), np.degrees(t1), np.degrees(t1), # targetLid(t2) -> ag súil le t2=90 céimphrionta (inbhéartach_kinematik_2r(1.0, 1.0, 1.0, 1.0)) # ~ (0.0, 90.0)

Is iad na línte criticiúla anseo nuair a scipeann an AI go minic: seiceáil inrochtaineachta (is é an pointe sa spás oibre é) agus `np.clip` (cosc ar ionchur arccos dul thar ±1 mar gheall ar earráid shlánaithe). Gan an dá chosaint seo, beidh an cód a tháirgeadh NaN nó tuairteála ag pointe neamhbhailí.

Leid: Agus tú ag iarraidh réiteach IK, inis go soiléir don AI "rialú inrochtaineachta a chur leis agus teorainn a chur le hionchur arccos go gearrthóg". Coscann an dá líne seo na hearráidí ciúine is cúis leis na cinn is mó sa réimse.

Teorainneacha Comhpháirteacha, Uathúlacht agus Réitigh Iolracha

Tá raon uillinne ag gach alt den fhíorróbat (m.sh. -170° go +170°), luasteorainn, agus teorainn luasghéaraithe. Fiú má thugann IK uillinn atá bailí go matamaiticiúil, ní féidir é a úsáid má tá an uillinn sin lasmuigh de raon fisiciúil an ailt. Ina theannta sin, titeann an róbat i uathúlacht i roinnt cumraíochtaí: tá dhá ais ailínithe, cailltear céim amháin saoirse, agus déanann treoluasanna comhpháirteacha iarracht dul go héigríoch le haghaidh gluaiseacht beag tip.

Sin an fáth nach leor réiteach AD amháin; Caithfidh gach réiteach scagaire inghlacthachta a rith:

def solution_gecerli_mi(acilar_deg, limit_deg): """pianta: [t1,t2,...], teorainneacha: [(min, max),...] "" le haghaidh pian, (amin, amax) i zip (acilar_deg, limit_deg): más rud é nach (amine <= pian <= amax): ar ais Bréagach, níos mó ná f1: {fin} teorainn ({amine}, {amax}) ach amháin" ar ais Fíor, "OK" teorainneacha = [(-170, 170), (-120, 120)]print(cozum_valid_mi([0.0, 90.0], teorainneacha)) # (True, 'OK')print(cozum_valid_mi(0.0). 'Sáraíodh an chomhtheorann...')

Is féidir le AI an réiteach "matamatach" de IK a thabhairt; ach baineann teorainneacha comhpháirteacha agus seachaint uatha go sonrach le do chóras agus ní mór iad a thabhairt mar chomhthéacs don leid.

Pleanáil Orbit

Ní bhaineann an róbat a fháil ó phointe A go pointe B líne dhíreach a tharraingt idir dhá uillinn. Cruthaíonn athrú tobann luais turraing mheicniúil agus creathadh. Ina áit sin, úsáidtear próifílí boga: próifíl treoluas trapezoidal (luasghéarú seasta – luasmhoilliú seasta – luasmhoilliú leanúnach) nó S-cuar (níos réidh, áit a bhfuil luasghéarú teoranta freisin). Agus an AI á dhéanamh chun trajectory a ghiniúint, ní mór duit an sprioc, an fad agus na srianta a thabhairt.

allmhairiú numpy mar npdef trapez_yorunge(q0, q1, v_max, a_max, dt=0.01): "" "Próifíl treoluais trapezoidal le haghaidh alt amháin. Seoltar an t-eagar suímh ar ais."""""""""""""""""""""""""")fad = abs(q1 - q0)treo = np.achar(q1 - q0) t_speed = 0_max t_speed**2 má tá 2 * distance_speed > achar: # próifíl triantánach (v_max gan a bheith insroichte) t_speed = np.sqrt(achar / a_max) t_constant = 0.0 v_peak = a_max * t_speed eile: t_constant = (fad - 2 * v_max_speed) / cele - 2 * v_max_speed) / T = v_max + t_constant t = np.arange(0, T, dt) # ... ríomh suímh do gach t (bunaithe ar chéimeanna luasghéaraithe/tairiseach/ luasmhoillithe) filleadh t, T, v_buaic, fad, vz = trajectory_traipéisídeach(0.0, 90.0, v_max=60.0, a_max=120.0, a_max=120": buaicfhad=120": {buaic) luas: {vz:.1f} deg/s")

Seo é an seiceáil loighic: má tá an t-achar gearr, ní shroichfidh an mótar v_max choíche agus iompóidh an phróifíl ó trapezoidal go triantánach. Má chailleann an AI an coinníoll seo, déanfar an ré mícheart a ríomh le haghaidh gluaiseachtaí gearra. Is féidir leat é seo a fhíorú tríd an gcód a thástáil a bhfuil luach aitheanta aige (mar shampla, achar an-ghearr).

Lag Pras / Pras Láidir

WEAK: "Scríobh ruthag a thógann lámh an róbait ó A go B."(Gan srian: luasteorainn? luasghéarú? spásáil na n-alt? Aschur dall.) LÁIDIR: "Gin trajectory pointe go pointe sa spás comhpháirteach do róbat 6-ais. Is é an luasteorainn do gach alt ná 90 céim, is é an teorainn luasghéaraithe ná 180 céim/s an teorainn luasghéaraithe a thugtar ^ 280 céim sa tábla. próifíl treoluas, má tá an t-achar gearr, titim isteach i bpróifíl triantánach. Is é an t-aschur de gach alt Chomh maith leis sin scríobh feidhm fíoraithe a seiceálann nach sáraíonn sé na teorainneacha Comhpháirteach: {{ tábla}}"

Fíorú: Ó Insamhladh go Robot

Fíoraítear an trajectory a ghineann an AI san ord seo sula dtéann tú chuig an róbat:

  1. Uimhriúil: An bhfuil uillinn, luas agus luasghéarú an ailt i ngach céim laistigh de theorainneacha?
  2. Imbhualadh: Ar feadh na conaire, an imbhuaileann an lámh léi féin nó leis an timpeallacht (amharc/samhlú más féidir)?
  3. Uathúlacht: An dtéann an fithis trí réigiún uathúlachta (an ionann an cinntitheach Seacaibíteach agus nialas)?
  4. Tástáil chrua-earraí mall: Oibrigh an róbat ar luas íseal (m.sh. 10%) agus déan monatóireacht amhairc air.
  5. Méadú luais de réir a chéile: Nuair a bhíonn gach rud fíoraithe, méadaíonn an luas céim ar chéim go dtí an luach ainmniúil.
Rabhadh: Nuair a bhíonn robot á thosú le trajectory nua den chéad uair, ba cheart go mbeadh an sárú luais íseal i gcónaí agus ba cheart go mbeadh an E-stad ar fáil. Fiú má tá an t-aschur AI “ceart go matamaiticiúil,” ní nochtfar fritháireamh, ais droim ar ais, nó snag cábla sa socrú fisiceach ach amháin le tástáil mhall.

Cás Mion

Iarrann an t-innealtóir uathoibrithe Ece ar an AI cód trajectory i spás comhpháirteach le haghaidh feidhmchlár piocadh agus áit. Táirgeann an AI próifíl trapezoidal, ach nuair a thástáil Ece bogadh gearr-achair, feiceann sí go bhfuil an t-am diúltach: níor láimhseáil an cód an cás próifíle triantánach nuair nach féidir v_max a bhaint amach. Ceartaíonn Ece é seo tríd an leid a rá "má tá an fad gearr, titim isteach sa phróifíl triantánach". Ritheann sé ansin na comhuillinneacha a thugann an AI trína fheidhm bhailíochtaithe i gcoinne a tábla teorann féin agus faigheann sé amach go raibh ailt 5 ag iarraidh +125° ag pointe amháin, agus ba é +120° an teorainn. Athphleanann sé an trajectory agus déanann sé monatóireacht air, an uair seo ag rith an róbait ar luas 10%. Sa chéad bhabhta, feiceann sé go bhfuil an gripper ag dul ró-ghar don tábla agus ceartaíonn sé an fritháireamh Z. D'fhill an AI imlíne oibre i nóiméid; ach bhain trí bhailíochtú ar leith (próifíl thriantánach, comhtheorainn, tástáil mhall) trí fhíorfhadhbanna.

Botúin Choitianta

  • Ag baint úsáide as an réiteach IK gan teorainneacha comhpháirteacha agus rialú inrochtaineachta.
  • Gan iontrálacha arccos/arcsin a ghearradh ach NaN a tháirgeadh i gcás earráide slánúcháin.
  • An fithis a iarraidh gan luas/luasghéarú a theorannú agus turraing mheicniúil a chruthú.
  • Neamhaird a dhéanamh ar chriosanna singularity agus ligean do luasanna comhpháirteacha skyrocket.
  • Gan bacadh leis an trasdul próifíl trapezoidal-triantánach i achar gearr agus ríomh an t-am mícheart.
  • An chéad tástáil fithiseach a dhéanamh ar lánluas agus gan rochtain E-stad.

Go hachomair

  • Tá réiteach amháin ag cineamatach ar aghaidh; is féidir le cineamaitic inbhéartach réitigh iolracha, nach bhfuil ann nó gan teorainn a tháirgeadh.
  • Is gá réitigh IK a scagadh ó thaobh teorainneacha comhpháirteacha, inrochtaineachta agus uathúlachta.
  • Pleanáil trajectory; Úsáideann sé próifílí boga atá comhoiriúnach le teorainn, mar shampla trapezoidal nó S-cuar.
  • Ag achar gearr athraíonn an phróifíl ó trapezoidal go triantánach; ba chóir é seo a láimhseáil sa chód.
  • Cuireann AI dlús leis an matamaitic; Ba cheart go gcuirfeadh na teorainneacha agus an comhthéacs suiteála fisiceach isteach sa leid.
  • Reáchtáiltear an trajectory nua i gcónaí den chéad uair le cóimheas ísealluais agus E-stad inrochtana.

Tasc feidhmchláir

Roghnaigh múnla láimhe dhá nó trí chomhpháirt (le fad naisc réadacha nó samhailfhadú agus teorainneacha ailt). Bíodh feidhm chinéimiteach inbhéartach agus pleanálaí trajectory a ghiniúint ag an AI leis an gcomhthéacs seo. Ansin: (1) an t-aschur IK a fhíorú de láimh le sprioc aitheanta (an gcuireann tú na huillinneacha ar ais agus ar ais go dtí an pointe céanna leis an FK), (2) tástáil go nglacann an cód iad trí phointe dorochtana amháin ar a laghad a thabhairt agus teorainn chomhpháirteach amháin a sháraíonn an sprioc, (3) seiceáil go bhfuil an t-am fithiseach réasúnta ag achar gearr. Scríobh síos cé mhéad saincheist bailíochtaithe a fuair tú sa chéad leagan den chód agus cén ciseal a bhain gach ceann díobh.