Gluaiseacht#
Réamhrá#
Rialaíonn mótair an chaoi a mbogann codanna de róbat. Is féidir mótair a úsáid chun lámh a ardú, crúb a chasadh, roth a chasadh, nó cuid eile de thógáil a bhogadh. Is féidir le dhá mhótar oibriú le chéile mar thiománaí chun an róbat ar fad a bhogadh agus a chasadh.
Cumraítear gach mótar sa fhuinneog Gléasanna. Ag brath ar an tógáil, féadfaidh ainmneacha na mótair athrú. Mar shampla, tá mótar darb ainm arm_motorag tógáil Competition Advanced 2.0. Féadfaidh róbat saincheaptha ainmneacha mótair éagsúla a úsáid.
De réir réamhshocraithe, rothlaíonn FORWARD mótar tuathalach, agus rothlaíonn REVERSE mótar deiseal. Má tá mótar socraithe chun aisiompú sa fhuinneog Gléasanna, athrófar na treoracha sin.
Tá go leor bealaí ann chun mótair a chódú. Seo thíos liosta de na modhanna Gluaiseachta go léir:
Gníomhartha — Stop agus rothlaigh mótair.
spin— Casann sé mótar ar aghaidh nó ar gcúl go deo.spin_for— Casann sé mótar ar feadh achar ar leith.spin_to_position— Casann sé mótar go suíomh ar leith.stop— Cuireann sé stop le mótar ó bheith ag sníomh.
Múiteoirí — Coigeartaigh socruithe mótair.
set_velocity— Insíonn sé seo do mhótar cé chomh tapa agus atá sé le sníomh.set_max_torque— Socraíonn sé cé chomh crua is a cheadaítear do mhótar brú agus é ag sníomh.set_position— Athraíonn sé suíomh reatha an mhótair go luach nua.set_stopping— Socraíonn sé conas a stopfaidh mótar ag gluaiseacht: trí choscánú, trí scaoileadh, nó trí choinneáil.set_timeout— Socraíonn sé cé mhéad ama a thógfaidh sé ar mhótar iarracht gluaiseacht a chríochnú.
Getters — Seiceáil stádas an mhótair.
get_position— Tugann sé seo suíomh reatha an mhótair ar ais.get_velocity— Tugann sé seo ar ais cé chomh tapa agus atá an mótar ag sníomh, mar chéatadán ó -100% go 100%.get_current— Tugann sé seo ar ais cé mhéad cumhachta atá á úsáid ag an mótar ón gceallraí, mar chéatadán ó 0% go 100%.is_stopped— Tugann sé seo ar ais an bhfuil an mótar críochnaithe ag gluaiseacht, mar luach Booleanach.is_moving— Tugann sé seo ar ais an bhfuil an mótar ag sníomh, mar luach Booleánach.
Gníomhartha#
spin#
Casann spin mótar ar aghaidh nó ar gcúl go deo. Leanfaidh an mótar ag sníomh go dtí go dtugtar gníomh eile dó, amhail sníomh i dtreo difriúil nó stopadh.
Usage:
arm_motor.spin(direction)
Paraiméadair |
Cur síos |
|---|---|
|
An treo a rothlaíonn an mótar: |
# Build Used: Competition Advanced 2.0
def main():
# Raise the ArmMotor, then stop
arm_motor.spin(REVERSE)
wait(1, SECONDS)
arm_motor.stop()
# Start threads — Do not delete
start_thread(main)
spin_for#
spin_for rothlaíonn mótar ar feadh achar sonrach. Tá an rothlú i gcoibhneas le suíomh reatha an mhótair. Fanfaidh an tionscadal go dtí go mbeidh an mótar críochnaithe ag rothlú sula rithfidh an chéad líne eile de chód.
Usage:
arm_motor.spin_for(direction, angle, units, wait)
Paraiméadair |
Cur síos |
|---|---|
|
An treo a rothlaíonn an mótar: |
|
An fad a rothlaíonn an mótar. |
|
Roghnach. An t-aonad achair: |
|
Roghnach. |
# Build Used: Competition Advanced 2.0
def main():
# Raise and lower the ArmMotor
arm_motor.spin_for(REVERSE, 180, DEGREES)
wait(1, SECONDS)
arm_motor.spin_for(FORWARD, 180, DEGREES)
# Start threads — Do not delete
start_thread(main)
spin_to_position#
spin_to_position Casann mótar go suíomh ar leith.
Is é suíomh mótair an fad atá sé sníomhaithe, arna thomhas i DEGREES nó TURNSIs ionann casadh amháin agus 360 céim. Ag tús tionscadail, socraítear suíomh an mhótair go 0 céim. Is féidir suíomh an mhótair a shocrú freisin ag baint úsáide as an modh set_position.
Is luachanna absalóideacha iad luachanna suímh. Ciallaíonn sé seo go mbraitheann treo an rothlaithe ar shuíomh reatha an mhótair.
Mar shampla, má thosaíonn an mótar ag 0 céim agus má rothlaíonn sé go dtí suíomh 720 céim, rothlóidh sé ar aghaidh dhá chasadh. Má rothlaíonn sé ansin go dtí suíomh 360 céim, rothlóidh sé ar gcúl casadh amháin, mar go bhfuil 360 níos lú ná 720.
Usage:
arm_motor.spin_to_position(angle, units, wait)
Paraiméadair |
Cur síos |
|---|---|
|
An luach suímh a rothlóidh an mótar chuige. |
|
Roghnach. An t-aonad suímh: |
|
Roghnach. |
# Build Used: Competition Advanced 2.0
def main():
# Return ArmMotor to 0 degrees after raising
arm_motor.spin_for(REVERSE, 180, DEGREES)
wait(1, SECONDS)
arm_motor.spin_to_position(0, DEGREES)
# Start threads — Do not delete
start_thread(main)
stop#
stop stopann mótar ó sníomh.
Usage:
arm_motor.stop()
Paraiméadair |
Cur síos |
|---|---|
Níl aon pharaiméadair ag an modh seo. |
# Build Used: Competition Advanced 2.0
def main():
# Raise the ArmMotor
arm_motor.spin(REVERSE)
wait(1, SECONDS)
arm_motor.stop()
# Start threads — Do not delete
start_thread(main)
Sóiteoirí#
set_velocity#
Insíonn set_velocity do mhótar cé chomh tapa agus atá sé le sníomh. Má bhíonn céatadán níos airde ann, sníomhann an mótar níos tapúla agus má bhíonn céatadán níos ísle ann, sníomhann an mótar níos moille.
Tosaíonn gach tionscadal le gach mótar ag sníomh ag luas 50% de réir réamhshocraithe.
Nóta: Má bhíonn luas níos airde ann, rothlaíonn an mótar níos tapúla, ach d’fhéadfadh sé a bheith níos lú cruinn. Má bhíonn luas níos ísle ann, rothlaíonn an mótar níos moille, ach d’fhéadfadh sé a bheith níos cruinne.
Usage:
arm_motor.set_velocity(velocity)
Paraiméadair |
Cur síos |
|---|---|
|
An luas le sníomh leis ó 0% go 100%. Is féidir leis seo a bheith ina shlánuimhir |
# Build Used: Competition Advanced 2.0
def main():
# Move the ArmMotor at different velocities
arm_motor.spin_for(REVERSE, 180, DEGREES)
wait(1, SECONDS)
# Move slow
arm_motor.set_velocity(20)
arm_motor.spin_for(FORWARD, 180, DEGREES)
wait(1, SECONDS)
# Move fast
arm_motor.set_velocity(100)
arm_motor.spin_for(REVERSE, 180, DEGREES)
# Start threads — Do not delete
start_thread(main)
set_max_torque#
Is fórsa rothlach é chasmhóimint. Léiríonn sé cé chomh crua is féidir le mótar a bhrú nó a tharraingt nuair a bhíonn sé ag sníomh.
set_max_torque socraíonn an chasmhóimint is mó a cheadaítear do mhótar a úsáid.
Ligeann céatadán níos airde don mhótar brú níos deacra, mar shampla agus rud trom á ardú. Cuireann céatadán níos ísle teorainn le cé chomh crua is féidir leis an mótar brú. Is féidir leis seo cabhrú leis an róbat a chosaint má théann an mótar i bhfostú nó má shroicheann sé deireadh a fhad is féidir leis bogadh.
Tosaíonn gach tionscadal le chasmhóimint gach mótair ag 50% de réir réamhshocraithe.
Usage:
arm_motor.set_max_torque(value)
Paraiméadair |
Cur síos |
|---|---|
|
Is é an chasmhóimint uasta is féidir leis an mótar a úsáid ná ó 0% go 100%. Is féidir leis seo a bheith ina shlánuimhir |
# Build Used: Competition Advanced 2.0
def main():
# Move the ArmMotor at different torques
arm_motor.spin_for(REVERSE, 180, DEGREES)
wait(1, SECONDS)
# Move with less torque
arm_motor.set_max_torque(20)
arm_motor.spin_for(FORWARD, 180, DEGREES)
wait(1, SECONDS)
# Move with maximum torque
arm_motor.set_max_torque(100)
arm_motor.spin_for(REVERSE, 180, DEGREES)
# Start threads — Do not delete
start_thread(main)
set_position#
Is é suíomh mótair an fad atá sé sníomhaithe, a thomhastar i DEGREES nó TURNS. Is ionann casadh amháin agus 360 céim. set_position athraíonn sé suíomh reatha an mhótair go luach nua.
Mar shampla, má tá mótar tar éis sníomh go 180 céim, má shocraítear an suíomh go 0 céim athshocrófar an suíomh sin ó 180 go 0 céim. Ansin is féidir leis an mótar sníomh go suíomhanna bunaithe ar an luach nua sin.
Usage:
arm_motor.set_position(position, units)
Paraiméadair |
Cur síos |
|---|---|
|
An luach suímh le socrú don mhótar. |
|
Roghnach. An t-aonad suímh: |
# Build Used: Competition Advanced 2.0
def main():
# Return ArmMotor to 0 degrees after raising
arm_motor.set_position(0, DEGREES)
arm_motor.spin_for(REVERSE, 180, DEGREES)
wait(1, SECONDS)
arm_motor.spin_to_position(0, DEGREES)
# Start threads — Do not delete
start_thread(main)
set_stopping#
set_stopping socraíonn sé conas a stopfaidh mótar ag gluaiseacht: trí choscánú, trí chóstalú, nó trí choinneáil.
Usage:
arm_motor.set_stopping(mode)
Paraiméadair |
Cur síos |
|---|---|
|
Conas a stopfaidh an mótar:
|
Mar shampla, má úsáidtear tógáil Competition Advanced 2.0 agus má shocraítear arm_motor go HOLD, coinneoidh an mótar an lámh ina seasamh reatha go dtí go dtarlóidh gluaiseacht eile láimhe. Ciallaíonn sé seo go n-oibreoidh an mótar in aghaidh domhantarraingthe chun an lámh a choinneáil san aer dá mbeadh an mótar stoptha agus an lámh ardaithe.
Mura n-úsáidtear an modh seo, úsáidfidh an mótar BRAKE nuair a stopfaidh sé.
# Build Used: Competition Advanced 2.0
def main():
# Move the ArmMotor, then coast to a stop
arm_motor.set_velocity(20)
arm_motor.set_stopping(COAST)
arm_motor.spin(REVERSE)
wait(1, SECONDS)
arm_motor.stop()
# Start threads — Do not delete
start_thread(main)
set_timeout#
set_timeout socraíonn sé cé mhéad ama a dhéanfaidh mótar iarracht gluaiseacht a chríochnú. Mura féidir leis an mótar críochnú laistigh den am sin, stopfaidh sé ag iarraidh agus bogfaidh sé ar aghaidh go dtí an chéad líne eile de chód. Coinníonn sé seo an mótar ó bheith sáinnithe i ngluaiseacht.
Usage:
arm_motor.set_timeout(value, units)
Paraiméadair |
Cur síos |
|---|---|
|
An méid ama is féidir leis an mótar iarracht a dhéanamh gluaiseacht a chríochnú. Is féidir leis seo a bheith ina shlánuimhir dhearfach |
|
Roghnach. An t-aonad ama: |
# Build Used: Competition Advanced 2.0
def main():
# Move ArmMotor as far as possible for 1 second before resetting
arm_motor.set_position(0, DEGREES)
arm_motor.set_timeout(1, SECONDS)
arm_motor.spin_for(REVERSE, 180, DEGREES)
arm_motor.spin_to_position(0, DEGREES)
# Start threads — Do not delete
start_thread(main)
Faighteoirí#
get_position#
Is é suíomh innill an fad atá sé sníomhaithe, a thomhastar i DEGREES nó TURNS. Is ionann casadh amháin agus 360 céim. get_position tugann sé suíomh reatha an innill ar ais.
Ag tús tionscadail, socraítear suíomh an mhótair go 0 céim. Má rothlaíonn an mótar casadh amháin ar aghaidh, beidh an suíomh 360 céim nó casadh amháin. Má rothlaíonn an mótar sa treo eile, beidh an suíomh diúltach.
Usage:
arm_motor.get_position(units)
Paraiméadair |
Cur síos |
|---|---|
|
Roghnach. An t-aonad chun suíomh an mhótair a thabhairt ar ais i: |
# Build Used: Competition Advanced 2.0
def main():
# Display how far the ArmMotor moves after one second
arm_motor.set_position(0, DEGREES)
console.print("Start: ")
console.print(arm_motor.get_position(DEGREES))
console.new_line()
arm_motor.spin(REVERSE)
wait(1, SECONDS)
arm_motor.stop()
console.print("After: ")
console.print(arm_motor.get_position(DEGREES))
# Start threads — Do not delete
start_thread(main)
get_velocity#
get_velocity tugann sé ar ais cé chomh tapa agus atá an mótar ag sníomh, mar chéatadán ó -100% go 100%.
Ciallaíonn luach dearfach go bhfuil an mótar ag sníomh ar aghaidh. Ciallaíonn luach diúltach go bhfuil an mótar ag sníomh ar gcúl.
Usage:
arm_motor.get_velocity()
Paraiméadair |
Cur síos |
|---|---|
Níl aon pharaiméadair ag an modh seo. |
# Build Used: Competition Advanced 2.0
def main():
# Display the ArmMotor's velocity when it moves
console.print("Resting: ")
console.print(arm_motor.get_velocity())
console.new_line()
arm_motor.spin(REVERSE)
wait(1, SECONDS)
console.print("Moving: ")
console.print(arm_motor.get_velocity())
arm_motor.stop()
# Start threads — Do not delete
start_thread(main)
get_current#
get_current tugann sé seo ar ais cé mhéad cumhachta atá an mótar ag úsáid ón gceallraí, mar chéatadán ó 0% go 100%.
Ciallaíonn luach reatha níos airde go bhfuil an mótar ag úsáid níos mó cumhachta. Is féidir leis seo tarlú nuair a bhíonn an mótar ag ardú rud trom, ag brú i gcoinne réada, nó ag iarraidh bogadh nuair atá sé sáinnithe.
Usage:
arm_motor.get_current()
Paraiméadair |
Cur síos |
|---|---|
Níl aon pharaiméadair ag an modh seo. |
# Build Used: Competition Advanced 2.0
def main():
# Display the motor's current when it moves
console.print("Resting: ")
console.print(arm_motor.get_current())
console.new_line()
arm_motor.spin(REVERSE)
wait(1, SECONDS)
console.print("Moving: ")
console.print(arm_motor.get_current())
arm_motor.stop()
# Start threads — Do not delete
start_thread(main)
is_stopped#
is_stopped ar ais an bhfuil an mótar críochnaithe ag bogadh, mar luach Booleanach. Is féidir é seo a úsáid chun am iompraíochtaí eile a rialú bunaithe ar ghluaiseacht an mhótair.
True— Tá an mótar críochnaithe ag gluaiseacht.False— Tá an mótar fós ag gluaiseacht.
Oibríonn an modh seo i gcomhar leis na modhanna Gluaiseachta seo a leanas a bhfuil an paraiméadar wait acu: spin_for agus spin_to_position.
Usage:
arm_motor.is_stopped()
Paraiméadair |
Cur síos |
|---|---|
Níl aon pharaiméadair ag an modh seo. |
# Build Used: Competition Advanced 2.0
def main():
# Turn the Eye Sensor's light on while ArmMotor is moving
arm_motor.spin_for(REVERSE, 180, DEGREES, wait=False)
wait(0.1, SECONDS)
while True:
if arm_motor.is_stopped():
eye.set_light(OFF)
else:
eye.set_light(ON)
# Start threads — Do not delete
start_thread(main)
is_moving#
is_moving luach Booleánach ar ais an bhfuil an mótar ag sníomh. Is féidir é seo a úsáid chun am iompraíochtaí eile a rialú bunaithe ar ghluaiseacht an mhótair.
True— Tá an mótar ag sníomh.False— Níl an mótar ag sníomh.
Oibríonn an modh seo i gcomhar leis na modhanna Gluaiseachta seo a leanas a bhfuil an paraiméadar wait acu: spin_for agus spin_to_position.
Usage:
arm_motor.is_moving()
Paraiméadair |
Cur síos |
|---|---|
Níl aon pharaiméadair ag an modh seo. |
# Build Used: Competition Advanced 2.0
def main():
# Turn the Eye Sensor's light on while ArmMotor is moving
arm_motor.spin_for(REVERSE, 180, DEGREES, wait=False)
wait(0.1, SECONDS)
while True:
if arm_motor.is_moving():
eye.set_light(ON)
else:
eye.set_light(OFF)
# Start threads — Do not delete
start_thread(main)