রোবট-নির্দিষ্ট পাইথন#

ভূমিকা#

হিরো বট স্ন্যাপশট-এ দুটি মোটর অপশন এবং অপটিক্যাল সেন্সর অন্তর্ভুক্ত রয়েছে।

IQ 22-23 Slapshot প্লেগ্রাউন্ডে সমস্ত স্ট্যান্ডার্ড VEXcode VR পদ্ধতি ব্যবহারের জন্য উপলব্ধ।

নিম্নে সকল উপলব্ধ রোবট-নির্দিষ্ট পদ্ধতির একটি তালিকা দেওয়া হলো:

ড্রাইভট্রেন – রোবটটিকে চালনা ও ঘোরানোর কাজ করে।

  • কর্ম

    • drive — রোবটটিকে অনির্দিষ্টকালের জন্য সামনে বা পিছনে চালনা করে।

    • drive_for — রোবটটিকে একটি নির্দিষ্ট দূরত্বে সামনে বা পিছনে নিয়ে যায়।

    • turn — রোবটটিকে অনির্দিষ্টকালের জন্য বামে বা ডানে ঘোরায়।

    • turn_for — রোবটটিকে নির্দিষ্ট সংখ্যক ডিগ্রিতে বামে বা ডানে ঘোরায়।

    • turn_to_heading — রোবটটিকে -359 থেকে 359 ডিগ্রির মধ্যে একটি নির্দিষ্ট দিকে মুখ করে ঘোরায়।

    • turn_to_rotation — রোবটটিকে একটি নির্দিষ্ট ঘূর্ণনে ঘোরায়।

    • stop — রোবটের চলাচল থামিয়ে দেয়।

  • Mutators

    • set_heading — রোবটের বর্তমান দিক পরিবর্তন করে একটি নতুন দিকে নিয়ে যায়।

    • set_rotation — রোবটের বর্তমান ঘূর্ণনকে একটি নতুন ঘূর্ণনে পরিবর্তন করে।

    • set_timeout — রোবট একটি মুভমেন্ট শেষ করার জন্য কত সময় চেষ্টা করবে তা সেট করে।

    • set_drive_velocity — রোবটকে বলে দেয় কত দ্রুত চালাতে হবে।

    • set_turn_velocity — রোবটকে বলে দেয় কত দ্রুত ঘুরতে হবে।

  • গেটার্স

    • heading — রোবটের বর্তমান হেডিং 0 থেকে 359.99 ডিগ্রির মধ্যে ফেরত দেয়।

    • rotation — রোবটের বর্তমান ঘূর্ণন ফেরত দেয়।

    • is_done — রোবটটির চলাচল শেষ হয়েছে কিনা, তা একটি বুলিয়ান মান হিসাবে ফেরত দেয়।

    • is_moving — রোবটটি চলছে কিনা, তা একটি বুলিয়ান মান হিসাবে ফেরত দেয়।

    • velocity — রোবটটি কত দ্রুত চলছে তা ফেরত দেয়।

গতি - রোবটের মোটরগুলোকে চালনা ও অনুসরণ করা।

  • কর্ম

    • spin — একটি মোটরকে অনির্দিষ্টকালের জন্য সামনে বা পিছনে ঘোরায়।

    • spin_for — একটি মোটরকে নির্দিষ্ট দূরত্বে ঘোরায়।

    • spin_to_position — একটি মোটরকে একটি নির্দিষ্ট অবস্থানে ঘোরায়।

    • stop — মোটরের ঘূর্ণন থামিয়ে দেয়।

  • Mutators

    • set_position — মোটরের বর্তমান অবস্থান একটি নতুন মানে পরিবর্তন করে।

    • set_velocity — মোটরকে বলে দেয় কত দ্রুত ঘুরতে হবে।

    • set_timeout — একটি মোটর তার নড়াচড়া শেষ করার জন্য কতটুকু সময় চেষ্টা করবে তা নির্ধারণ করে।

  • গেটার্স

    • is_done — মোটরটির চলাচল শেষ হয়েছে কিনা, তা একটি বুলিয়ান মান হিসাবে ফেরত দেয়।

    • is_spinning — মোটরটি ঘুরছে কিনা তা একটি বুলিয়ান মান হিসাবে ফেরত দেয়।

    • position — মোটরের বর্তমান অবস্থান ফেরত দেয়।

    • velocity — মোটরটি কত দ্রুত ঘুরছে তা ফেরত দেয়।

ইভেন্ট - কোনো সেন্সরের অবস্থা পরিবর্তিত হলে কোডটি রান করুন।

  • বাম্পার

    • pressed - ইনটেক বাম্পার চাপলে একটি কলব্যাক ফাংশন নিবন্ধন করে।

    • released - ইনটেক বাম্পার রিলিজ হলে ব্যবহারের জন্য একটি কলব্যাক ফাংশন রেজিস্টার করে।

  • অপটিক্যাল

    • object_detected – অপটিক্যাল সেন্সর কোনো বস্তু শনাক্ত করলে যে ফাংশনটি কল করা হবে তা রেজিস্টার করে।

    • object_lost – অপটিক্যাল সেন্সর কোনো বস্তু হারালে যে ফাংশনটি কল করা হবে তা রেজিস্টার করে।

কনসোল – কনসোলে প্রিন্ট করুন এবং মানগুলো পর্যবেক্ষণ করুন।

  • প্রিন্ট

    • brain.screen.print — কনসোলে টেক্সট, সংখ্যা, অথবা ভেরিয়েবলের মান প্রদর্শন করে।

    • brain.screen.next_row — কনসোল কার্সারকে পরবর্তী সারির শুরুতে নিয়ে যায়।

    • brain.screen.clear_screen — কনসোল থেকে সমস্ত সারি মুছে ফেলে।

  • মনিটর

    • monitor_variable — মনিটর ট্যাবে এক বা একাধিক পূর্বনির্ধারিত ভেরিয়েবল যোগ করে।

    • monitor_sensor — মনিটর ট্যাবে এক বা একাধিক সেন্সর মান যোগ করে।

সংবেদন - রোবটের বিভিন্ন সেন্সর ব্যবহার করুন।

  • বাম্পার

    • pressing - ইনটেক বাম্পার বর্তমানে চাপা আছে কিনা তা ফেরত দেয়।

  • অপটিক্যাল

    • is_near_object – অপটিক্যাল সেন্সর সীমার মধ্যে কোনো বস্তু সনাক্ত করে কিনা তা ফেরত দেয়।

    • color – অপটিক্যাল সেন্সর দ্বারা শনাক্ত করা রঙটি ফেরত দেয়।

    • brightness – বস্তু থেকে প্রতিফলিত আলোর পরিমাণ ফেরত দেয়।

    • hue – অপটিক্যাল সেন্সর দ্বারা শনাক্ত করা রঙ (hue) ফেরত দেয়।

এই পৃষ্ঠার উদাহরণগুলিতে প্লেগ্রাউন্ডের ডিফল্ট শুরুর অবস্থান ব্যবহার করা হয়েছে।

ড্রাইভট্রেন#

ড্রাইভট্রেন ভিআর রোবটের চালনা ও মোড় নেওয়া নিয়ন্ত্রণ করে। ড্রাইভট্রেনটি সামনে বা পেছনে যেতে, বামে বা ডানে ঘুরতে, নির্দিষ্ট দিকে ঘুরতে এবং নিজের ঘূর্ণন অনুসরণ করতে পারে।

কর্ম#

ড্রাইভ#

ড্রাইভ drive রোবটটিকে অনির্দিষ্টকালের জন্য সামনে বা পেছনে চালায়। রোবটটি ততক্ষণ চলতে থাকবে যতক্ষণ না এটিকে মোড় নেওয়া বা থামানোর মতো অন্য কোনো কাজ দেওয়া হয়।

Usage:
drivetrain.drive(direction)

প্যারামিটার

বর্ণনা

direction

রোবটটি যেদিকে চলে: FORWARD বা REVERSE।

def main():
    # Drive forward then stop
    drivetrain.drive(FORWARD)
    wait(2, SECONDS)
    drivetrain.stop()

# VR threads — Do not delete
vr_thread(main)

ড্রাইভের জন্য#

drive_for রোবটটিকে একটি নির্দিষ্ট দূরত্ব পর্যন্ত সামনে বা পিছনে নিয়ে যায়। রোবটটির চলা শেষ না হওয়া পর্যন্ত প্রজেক্টটি অপেক্ষা করবে এবং তারপরেই কোডের পরবর্তী লাইনটি রান করবে।

Usage:
drivetrain.drive_for(direction, distance, units, wait)

প্যারামিটার

বর্ণনা

direction

রোবটটি যেদিকে চলে: FORWARD বা REVERSE।

distance

রোবটটি যে দূরত্ব অতিক্রম করে। এটি একটি পূর্ণসংখ্যা integer অথবা দশমিক সংখ্যা (float ) হতে পারে।

units

দূরত্বের একক: INCHES বা MM (মিলিমিটার)।

wait

ঐচ্ছিক। wait=True (ডিফল্ট) পরবর্তী কোড লাইন চলার আগে রোবটের নড়াচড়া শেষ না হওয়া পর্যন্ত প্রজেক্টকে অপেক্ষা করায়। wait=False পরবর্তী কোড লাইনকে সাথে সাথে চালিয়ে দেয়।

def main():
    # Drive forward and backward
    drivetrain.drive_for(FORWARD, 200, MM)
    drivetrain.drive_for(REVERSE, 200, MM)

# VR threads — Do not delete
vr_thread(main)

পালা#

turn রোবটটিকে অনির্দিষ্টকালের জন্য বামে বা ডানে ঘোরায়। রোবটটি ততক্ষণ ঘুরতে থাকবে যতক্ষণ না এটিকে চালানো বা থামানোর মতো অন্য কোনো কাজ দেওয়া হয়।

Usage:
drivetrain.turn(direction)

প্যারামিটার

বর্ণনা

direction

রোবটটি যেদিকে ঘোরে: LEFT বা RIGHT।

def main():
    # Turn right and left, then stop
    drivetrain.turn(RIGHT)
    wait(2, SECONDS)
    drivetrain.turn(LEFT)
    wait(2, SECONDS)
    drivetrain.stop()

# VR threads — Do not delete
vr_thread(main)

পালা_জন্য#

turn_for রোবটটিকে একটি নির্দিষ্ট সংখ্যক ডিগ্রিতে বামে বা ডানে ঘোরায়। এই মোড়টি রোবটের বর্তমান অবস্থানের সাপেক্ষে হয়। রোবটের মোড় নেওয়া শেষ না হওয়া পর্যন্ত প্রজেক্টটি অপেক্ষা করবে এবং তারপরেই কোডের পরবর্তী লাইনটি রান করবে।

Usage:
drivetrain.turn_for(direction, angle, units, wait)

প্যারামিটার

বর্ণনা

direction

রোবটটি যেদিকে ঘোরে: LEFT বা RIGHT।

angle

রোবটটি যত ডিগ্রি ঘোরে। এটি একটি পূর্ণসংখ্যা integer অথবা দশমিক সংখ্যা (float ) হতে পারে।

units

ঘূর্ণন একক: DEGREES।

wait

ঐচ্ছিক। wait=True (ডিফল্ট) পরবর্তী কোড লাইনটি চলার আগে রোবটের ঘোরা শেষ না হওয়া পর্যন্ত প্রজেক্টটিকে অপেক্ষা করায়। wait=False পরবর্তী কোড লাইনটি সাথে সাথেই চালিয়ে দেয়।

def main():
    # Turn the robot right and left
    drivetrain.turn_for(RIGHT, 90, DEGREES)
    wait(1, SECONDS)
    drivetrain.turn_for(LEFT, 90, DEGREES)

# VR threads — Do not delete
vr_thread(main)

শিরোনামে ঘুরুন#

হেডিং হলো রোবটের অভিমুখ, যা ডিগ্রিতে পরিমাপ করা হয়। turn_to_heading রোবটকে -359 থেকে 359 ডিগ্রির মধ্যে একটি নির্দিষ্ট হেডিং-এর দিকে ঘোরায়। রোবটটি লক্ষ্য হেডিং-এ পৌঁছানোর জন্য সবচেয়ে ছোট পথটি বেছে নেবে।

রোবটটির প্রারম্ভিক অভিমুখ ০ ডিগ্রি।

রোবটটির ঘোরা শেষ না হওয়া পর্যন্ত প্রজেক্টটি অপেক্ষা করবে এবং তারপরেই কোডের পরবর্তী লাইনটি রান করবে।

Usage:
drivetrain.turn_to_heading(angle, units, wait)

প্যারামিটার

বর্ণনা

angle

রোবটটি যে দিকে মুখ করবে, তা ডিগ্রিতে পরিমাপ করতে হবে। এটি integer (ফ্লোট), অথবা -৩৫৯ থেকে ৩৫৯ পর্যন্ত দশমিক (float) সংখ্যা হতে পারে।

units

ঘূর্ণন একক: DEGREES।

wait

ঐচ্ছিক। wait=True (ডিফল্ট) পরবর্তী কোড লাইনটি চলার আগে রোবটের ঘোরা শেষ না হওয়া পর্যন্ত প্রজেক্টটিকে অপেক্ষা করায়। wait=False পরবর্তী কোড লাইনটি সাথে সাথেই চালিয়ে দেয়।

def main():
    # Turn to face the cardinal directions
    drivetrain.turn_to_heading(90, DEGREES)
    wait(1, SECONDS)
    drivetrain.turn_to_heading(180, DEGREES)
    wait(1, SECONDS)
    drivetrain.turn_to_heading(270, DEGREES)
    wait(1, SECONDS)
    drivetrain.turn_to_heading(0, DEGREES)

# VR threads — Do not delete
vr_thread(main)

ঘূর্ণনে পরিণত করুন#

turn_to_rotation রোবটটিকে একটি নির্দিষ্ট ঘূর্ণনে ঘোরায়।

ঘূর্ণন হল রোবটের ঘুরে যাওয়ার পরিমাণ, যা ডিগ্রিতে পরিমাপ করা হয়। একটি প্রকল্পের শুরুতে, ঘূর্ণনের মান 0 ডিগ্রিতে সেট করা হয়। set_rotation পদ্ধতি ব্যবহার করেও ঘূর্ণন সেট করা যেতে পারে।

ঘূর্ণনের মান পরম। এর মানে হলো, মোড় নেওয়ার দিকটি রোবটের বর্তমান ঘূর্ণনের উপর নির্ভর করে। ডানদিকে ঘুরলে ঘূর্ণন বাড়ে এবং বামদিকে ঘুরলে ঘূর্ণন কমে।

উদাহরণস্বরূপ, যদি রোবটটি ০ ডিগ্রি থেকে শুরু করে এবং আপনি এটিকে ৭২০ ডিগ্রি ঘোরান, তবে এটি দুইবার ডানদিকে ঘুরবে। এরপর যদি আপনি এটিকে ৩৬০ ডিগ্রি ঘোরান, তবে এটি একবার বামদিকে ঘুরবে, কারণ ৩৬০ হলো ৭২০-এর চেয়ে কম।

রোবটটির ঘোরা শেষ না হওয়া পর্যন্ত প্রজেক্টটি অপেক্ষা করবে এবং তারপরেই কোডের পরবর্তী লাইনটি রান করবে।

Usage:
drivetrain.turn_to_rotation(angle, units, wait)

প্যারামিটার

বর্ণনা

angle

রোবটটি যে ঘূর্ণন মানে (ডিগ্রিতে) ঘুরবে। এটি integer বা দশমিক (float ) হতে পারে।

units

ঘূর্ণন একক: DEGREES।

wait

ঐচ্ছিক। wait=True (ডিফল্ট) পরবর্তী কোড লাইনটি চলার আগে রোবটের ঘোরা শেষ না হওয়া পর্যন্ত প্রজেক্টটিকে অপেক্ষা করায়। wait=False পরবর্তী কোড লাইনটি সাথে সাথেই চালিয়ে দেয়।

def main():
    # Turn left, then spin in a circle
    # clockwise and face right
    drivetrain.turn_to_rotation(-90, DEGREES)
    wait(1, SECONDS)
    drivetrain.turn_to_rotation(450, DEGREES)

# VR threads — Do not delete
vr_thread(main)

থামুন#

stop রোবটের চলাচল থামিয়ে দেয়।

Usage:
drivetrain.stop()

প্যারামিটার

বর্ণনা

এই পদ্ধতিতে কোনো প্যারামিটার নেই।

def main():
    # Drive forward then stop
    drivetrain.drive(FORWARD)
    wait(2, SECONDS)
    drivetrain.stop()

# VR threads — Do not delete
vr_thread(main)

মিউটেটর#

শিরোনাম সেট করুন#

হেডিং হলো রোবটের অভিমুখ, যা ডিগ্রিতে পরিমাপ করা হয়। set_heading রোবটের বর্তমান হেডিং পরিবর্তন করে একটি নতুন হেডিং মানে সেট করে।

উদাহরণস্বরূপ, যদি রোবটটি ডানদিকে মুখ করে থাকে, তবে হেডিং ০ ডিগ্রিতে সেট করলে সেই ডানমুখী অবস্থানটিই নতুন ০ ডিগ্রি হয়ে যায়। এরপর রোবটটি সেই নতুন হেডিং-এর উপর ভিত্তি করে অন্যান্য অবস্থানে ঘুরতে পারে।

Usage:
drivetrain.set_heading(heading, units)

প্যারামিটার

বর্ণনা

heading

রোবটের জন্য নির্ধারণ করার হেডিং ভ্যালু, ডিগ্রিতে। এটি একটি পূর্ণসংখ্যা integer অথবা দশমিক সংখ্যা (float ) হতে পারে।

units

শিরোনামের একক: DEGREES।

def main():
    # Face the new 0 degrees
    drivetrain.set_heading(90, DEGREES)
    drivetrain.turn_to_heading(0, DEGREES)

# VR threads — Do not delete
vr_thread(main)

ঘূর্ণন সেট করুন#

রোবটটি কতটা ঘুরেছে, তাকেই রোটেশন বলা হয়, যা ডিগ্রিতে পরিমাপ করা হয়। একটি প্রোজেক্টের শুরুতে, রোটেশনের মান ০ ডিগ্রিতে সেট করা থাকে। set_rotation রোবটের বর্তমান রোটেশনকে একটি নতুন মানে পরিবর্তন করে।

উদাহরণস্বরূপ, যদি রোবটটি ডানদিকে দুটি পূর্ণ পাক ঘুরে থাকে, তবে এর ঘূর্ণন মান হবে ৭২০ ডিগ্রি। ঘূর্ণন মান ০ ডিগ্রিতে সেট করলে তা ৭২০ থেকে ০ ডিগ্রিতে রিসেট হয়ে যাবে। এরপর রোবটটি সেই নতুন মানের উপর ভিত্তি করে ঘুরতে পারবে।

Usage:
drivetrain.set_rotation(rotation, units)

প্যারামিটার

বর্ণনা

rotation

রোবটের জন্য ঘূর্ণনের মান, ডিগ্রিতে, নির্ধারণ করতে হবে। এটি একটি পূর্ণসংখ্যা integer অথবা দশমিক সংখ্যা (float ) হতে পারে।

units

ঘূর্ণন একক: DEGREES।

def main():
    # Spin counterclockwise two times
    drivetrain.set_rotation(720, DEGREES)
    drivetrain.turn_to_rotation(0, DEGREES)

# VR threads — Do not delete
vr_thread(main)

সেট_টাইমআউট#

set_timeout নির্ধারণ করে যে রোবট একটি মুভমেন্ট শেষ করার জন্য কতটুকু সময় চেষ্টা করবে। যদি রোবট সেই সময়ের মধ্যে কাজটি শেষ করতে না পারে, তবে এটি চেষ্টা করা বন্ধ করে দেবে এবং কোডের পরবর্তী লাইনে চলে যাবে। এটি রোবটকে কোনো একটি মুভমেন্টে আটকে যাওয়া থেকে রক্ষা করে।

Usage:
drivetrain.set_timeout(value, units)

প্যারামিটার

বর্ণনা

value

রোবটটি একটি নড়াচড়া শেষ করার জন্য যে পরিমাণ সময় চেষ্টা করতে পারে। এটি একটি ধনাত্মক integer অথবা দশমিক (float ) সংখ্যা হতে পারে।

units

সময়ের একক: SECONDS বা MSEC।

def main():
    # Turn right after driving forward
    drivetrain.set_timeout(1, SECONDS)
    drivetrain.drive_for(FORWARD, 25, INCHES)
    drivetrain.turn_for(RIGHT, 90)

# VR threads — Do not delete
vr_thread(main)

সেট_ড্রাইভ_বেগ#

set_drive_velocity রোবটকে বলে দেয় সে কত দ্রুত চলবে। উচ্চতর শতাংশ রোবটকে দ্রুত চালায় এবং নিম্নতর শতাংশ রোবটকে ধীরে চালায়।

প্রতিটি প্রকল্প ডিফল্টরূপে রোবটের ৫০% গতিতে চলার মাধ্যমে শুরু হয়।

দ্রষ্টব্য: উচ্চ বেগ রোবটকে দ্রুত চলতে সাহায্য করে, কিন্তু এর নির্ভুলতা কম হতে পারে। কম বেগ রোবটকে ধীরে চলতে সাহায্য করে, কিন্তু এর নির্ভুলতা বেশি হতে পারে।

Usage:
drivetrain.set_drive_velocity(velocity, units)

প্যারামিটার

বর্ণনা

velocity

০% থেকে ১০০% পর্যন্ত চালনার বেগ। এটি একটি পূর্ণসংখ্যা integer অথবা দশমিক সংখ্যা (float ) হতে পারে।

units

বেগের একক: PERCENT।

def main():
    # Drive forward at different velocities
    # Default velocity
    drivetrain.drive_for(FORWARD, 150, MM)
    wait(1, SECONDS)
    # Drive slower
    drivetrain.set_drive_velocity(20, PERCENT)
    drivetrain.drive_for(FORWARD, 150, MM)
    wait(1, SECONDS)
    # Drive faster
    drivetrain.set_drive_velocity(100, PERCENT)
    drivetrain.drive_for(FORWARD, 150, MM)

# VR threads — Do not delete
vr_thread(main)

সেট_টার্ন_ভেলোসিটি#

set_turn_velocity set_turn_velocity রোবটকে বলে দেয় সে কত দ্রুত ঘুরবে। উচ্চতর শতাংশ রোবটকে দ্রুত ঘোরায় এবং নিম্নতর শতাংশ রোবটকে ধীরে ঘোরায়।

প্রতিটি প্রকল্প ডিফল্টরূপে রোবটের ৫০% গতিতে ঘোরার মাধ্যমে শুরু হয়।

দ্রষ্টব্য: উচ্চ বেগ রোবটকে দ্রুত ঘোরাতে পারে, কিন্তু তা কম নির্ভুল হতে পারে। নিম্ন বেগ রোবটকে ধীরে ঘোরাতে পারে, কিন্তু তা আরও নির্ভুল হতে পারে।

Usage:
drivetrain.set_turn_velocity(velocity, units)

প্যারামিটার

বর্ণনা

velocity

মোড় নেওয়ার বেগ ০% থেকে ১০০% পর্যন্ত। এটি একটি পূর্ণসংখ্যা integer অথবা দশমিক সংখ্যা (float ) হতে পারে।

units

বেগের একক: PERCENT।

def main():
    # Turn at different velocities
    # Default velocity
    drivetrain.turn_for(RIGHT, 120, DEGREES)
    wait(1, SECONDS)
    # Turn slower
    drivetrain.set_turn_velocity(20, PERCENT)
    drivetrain.turn_for(RIGHT, 120, DEGREES)
    wait(1, SECONDS)
    # Turn faster
    drivetrain.set_turn_velocity(100, PERCENT)
    drivetrain.turn_for(RIGHT, 120, DEGREES)

# VR threads — Do not delete
vr_thread(main)

গেটার্স#

শিরোনাম#

হেডিং হলো রোবটের অভিমুখ, যা ডিগ্রিতে পরিমাপ করা হয়। heading রোবটের বর্তমান হেডিং ০ থেকে ৩৫৯.৯৯ ডিগ্রি পর্যন্ত ফেরত দেয়।

রোবটটির প্রারম্ভিক অভিমুখ ০ ডিগ্রি।

Usage:
drivetrain.heading(units)

প্যারামিটার

বর্ণনা

units

শিরোনামের একক: DEGREES।

def main():
    # Display the heading after turning
    drivetrain.turn_for(RIGHT, 450, DEGREES)
    brain.screen.print("Heading: ")
    brain.screen.print(drivetrain.heading(DEGREES))

# VR threads — Do not delete
vr_thread(main)

ঘূর্ণন#

রোবটটি কতটা ঘুরেছে, তা-ই হলো রোটেশন, যা ডিগ্রিতে পরিমাপ করা হয়। একটি প্রোজেক্টের শুরুতে, রোটেশনের মান ০ ডিগ্রিতে সেট করা থাকে। rotation রোবটটির বর্তমান রোটেশন ফেরত দেয়।

ডানদিকে ঘুরলে ঘূর্ণন বাড়ে এবং বামদিকে ঘুরলে ঘূর্ণন কমে। উদাহরণস্বরূপ, ডানদিকে দুটি পূর্ণ পাক দিলে ৭২০ ডিগ্রি ঘূর্ণন ঘটবে।

Usage:
drivetrain.rotation(units)

প্যারামিটার

বর্ণনা

units

ঘূর্ণন একক: DEGREES।

def main():
    # Display the rotation after turning
    drivetrain.turn_for(RIGHT, 450, DEGREES)
    brain.screen.print("Rotation: ")
    brain.screen.print(drivetrain.rotation(DEGREES))

# VR threads — Do not delete
vr_thread(main)

সম্পন্ন হয়েছে#

is_done একটি বুলিয়ান মান হিসাবে ফেরত দেয় যে রোবটটির চলাচল শেষ হয়েছে কিনা। রোবটের চলাচলের উপর ভিত্তি করে অন্যান্য আচরণের সময় নিয়ন্ত্রণ করতে এটি ব্যবহার করা যেতে পারে।

  • True — রোবটটির চলাচল শেষ হয়েছে।

  • False — রোবটটি এখনও চলছে।

এই পদ্ধতিটি নিম্নলিখিত ড্রাইভট্রেন পদ্ধতিগুলির সাথে একত্রে কাজ করে যেগুলিতে wait প্যারামিটার রয়েছে: drive_for, turn_for, turn_to_heading, এবং turn_to_rotation।

Usage:
drivetrain.is_done()

প্যারামিটার

বর্ণনা

এই পদ্ধতিতে কোনো প্যারামিটার নেই।

চলমান#

is_moving রোবটটি চলছে কিনা তা একটি বুলিয়ান মান হিসাবে ফেরত দেয়। রোবটের চলাচলের উপর ভিত্তি করে অন্যান্য আচরণের সময় নিয়ন্ত্রণ করতে এটি ব্যবহার করা যেতে পারে।

  • True — রোবটটি চলছে।

  • False — রোবটটি নড়ছে না।

Usage:
drivetrain.is_moving()

প্যারামিটার

বর্ণনা

এই পদ্ধতিতে কোনো প্যারামিটার নেই।

বেগ#

বেগ velocity রোবটটি কত দ্রুত চলছে তা শতাংশ হিসাবে দেখায়, যা -100% থেকে 100% পর্যন্ত হয়ে থাকে।

Usage:
drivetrain.velocity(units)

প্যারামিটার

বর্ণনা

units

বেগের একক: PERCENT।

উদাহরণ

def main():
    # Display the velocity after driving
    drivetrain.drive_for(FORWARD, 150, MM)
    brain.screen.print("Velocity: ")
    brain.screen.print(drivetrain.velocity(PERCENT))

গতি#

স্ন্যাপশট ইনটেক মোটর ব্যবহার করে ডিস্ক সংগ্রহ করে অথবা সেগুলোকে ঘুরিয়ে বের করে স্কোর করতে বা ফেলে দিতে সাহায্য করে। আর্ম মোটরটি ডিসপেন্সার থেকে ডিস্ক ছেড়ে দিয়ে ফিল্ডের উপাদানগুলোতে পৌঁছানোর জন্য আর্মটিকে উপরে ও নিচে ওঠানামা করায়।

প্রতিটি মোটরের নিজস্ব দিকনির্দেশনা আচরণ রয়েছে। দিকনির্দেশনার বিবরণগুলো ব্যাখ্যা করে যে, স্ন্যাপশটে প্রতিটি দিক কীভাবে সেই মোটরটিকে চালিত করে।

কর্ম#

স্পিন#

spin একটি মোটরকে অনির্দিষ্টকালের জন্য সামনে বা পেছনে ঘোরায়। মোটরটি ততক্ষণ ঘুরতে থাকবে যতক্ষণ না এটিকে অন্য কোনো কাজ দেওয়া হয়, যেমন ভিন্ন দিকে ঘোরানো বা থামানো।

ব্যবহারবিধি: এই পদ্ধতিতে দুটি উপলব্ধ মোটর অবজেক্টের মধ্যে
একটি ব্যবহার করা যেতে পারে, যেমনটি নিচে দেখানো হয়েছে:

মোটর

আদেশ

intake_motor

intake_motor.spin(direction) — ইনটেক মোটর

arm_motor

arm_motor.spin(direction) — আর্ম মোটর

প্যারামিটার

বর্ণনা

direction

মোটরের ঘোরার দিক:

  • FORWARD — ইনটেক মোটরকে ইনটেকের দিকে ঘোরায় অথবা আর্ম মোটরকে উপরে তোলে।
  • REVERSE — ইনটেক মোটরকে আউটটেকের দিকে ঘোরায় অথবা আর্ম মোটরকে নিচে নামায়।

def main():
    # Spin the Intake Motor to collect a Disc
    intake_motor.spin(FORWARD)
    wait(1, SECONDS)
    intake_motor.stop()

# VR threads — Do not delete
vr_thread(main)

স্পিন_ফর#

spin_for একটি মোটরকে একটি নির্দিষ্ট দূরত্বে ঘোরায়। এই ঘূর্ণনটি মোটরের বর্তমান অবস্থানের সাপেক্ষে হয়। মোটরটির ঘূর্ণন শেষ না হওয়া পর্যন্ত প্রজেক্টটি অপেক্ষা করবে এবং তারপরেই কোডের পরবর্তী লাইনটি রান করবে।

ব্যবহারবিধি: এই পদ্ধতিতে দুটি উপলব্ধ মোটর অবজেক্টের মধ্যে
একটি ব্যবহার করা যেতে পারে, যেমনটি নিচে দেখানো হয়েছে:

মোটর

আদেশ

intake_motor

intake_motor.spin_for(direction, distance, units, wait=True) — ইনটেক মোটর

arm_motor

arm_motor.spin_for(direction, distance, units, wait=True) — আর্ম মোটর

প্যারামিটার

বর্ণনা

direction

মোটরের ঘোরার দিক:

  • FORWARD — ইনটেক মোটরকে ইনটেকের দিকে ঘোরায় অথবা আর্ম মোটরকে উপরে তোলে।
  • REVERSE — ইনটেক মোটরকে আউটটেকের দিকে ঘোরায় অথবা আর্ম মোটরকে নিচে নামায়।

distance

মোটরের ঘূর্ণন দূরত্ব। DEGREES পূর্ণসংখ্যা ব্যবহার করুন। TURNS পূর্ণসংখ্যা বা দশমিক ব্যবহার করা যেতে পারে।

units

ঐচ্ছিক। দূরত্বের একক: DEGREES (ডিফল্ট) অথবা TURNS।

wait

ঐচ্ছিক।

  • wait=True (ডিফল্ট) — পরবর্তী কোড লাইন চলার আগে মোটরের ঘোরা শেষ না হওয়া পর্যন্ত প্রজেক্টকে অপেক্ষা করায়।
  • wait=False — পরবর্তী কোড লাইন সাথে সাথে চালিয়ে দেয়।

def main():
    # Collect the preloaded Disc
    intake_motor.spin_for(FORWARD, 180, DEGREES)

# VR threads — Do not delete
vr_thread(main)

অবস্থান ঘোরানো#

spin_to_position একটি মোটরকে একটি নির্দিষ্ট অবস্থানে ঘোরায়।

একটি মোটরের অবস্থান হল এটি কতদূর ঘুরেছে, যা DEGREES বা TURNSএ পরিমাপ করা হয়। এক পাক 360 ডিগ্রির সমান। একটি প্রকল্পের শুরুতে, মোটরের অবস্থান 0 ডিগ্রিতে সেট করা হয়। মোটরের অবস্থান set_position পদ্ধতি ব্যবহার করেও সেট করা যেতে পারে।

অবস্থানের মানগুলো পরম। এর মানে হলো, ঘূর্ণনের দিক মোটরের বর্তমান অবস্থানের উপর নির্ভর করে।

উদাহরণস্বরূপ, যদি মোটরটি ০ ডিগ্রি থেকে যাত্রা শুরু করে ৭২০ ডিগ্রি অবস্থানে ঘোরে, তবে এটি সামনের দিকে দুইবার ঘুরবে। এরপর যদি এটি ৩৬০ ডিগ্রি অবস্থানে ঘোরে, তবে এটি পেছনের দিকে একবার ঘুরবে, কারণ ৩৬০ হলো ৭২০-এর চেয়ে কম।

ব্যবহারবিধি: এই পদ্ধতিতে দুটি উপলব্ধ মোটর অবজেক্টের মধ্যে
একটি ব্যবহার করা যেতে পারে, যেমনটি নিচে দেখানো হয়েছে:

মোটর

আদেশ

intake_motor

intake_motor.spin_to_position(angle, units, wait=True) — ইনটেক মোটর

arm_motor

arm_motor.spin_to_position(angle, units, wait=True) — আর্ম মোটর

প্যারামিটার

বর্ণনা

angle

মোটরটি যে অবস্থানে ঘুরবে। DEGREES এর জন্য পূর্ণসংখ্যা ব্যবহার করুন। TURNS এর জন্য পূর্ণসংখ্যা বা দশমিক ব্যবহার করা যেতে পারে।

units

ঐচ্ছিক। অবস্থানের একক: DEGREES (ডিফল্ট) অথবা TURNS।

wait

ঐচ্ছিক।

  • wait=True (ডিফল্ট) — পরবর্তী কোড লাইন চলার আগে মোটরের ঘোরা শেষ না হওয়া পর্যন্ত প্রজেক্টকে অপেক্ষা করায়।
  • wait=False — পরবর্তী কোড লাইন সাথে সাথে চালিয়ে দেয়।

def main():
    # Raise the Arm to reach over the barrier
    arm_motor.spin_to_position(600, DEGREES)

# VR threads — Do not delete
vr_thread(main)

মোটর বন্ধ করুন#

stop একটি মোটরের ঘূর্ণন থামিয়ে দেয়।

ব্যবহারবিধি: এই পদ্ধতিতে দুটি উপলব্ধ মোটর অবজেক্টের মধ্যে
একটি ব্যবহার করা যেতে পারে, যেমনটি নিচে দেখানো হয়েছে:

মোটর

আদেশ

intake_motor

intake_motor.stop() — ইনটেক মোটর

arm_motor

arm_motor.stop() — মোটর চালু করুন

প্যারামিটার

বর্ণনা

এই পদ্ধতিতে কোনো প্যারামিটার নেই।

def main():
    # Raise the Arm briefly, then stop it
    arm_motor.spin(FORWARD)
    wait(1, SECONDS)
    arm_motor.stop()

# VR threads — Do not delete
vr_thread(main)

মিউটেটর#

সেট_পজিশন#

একটি মোটরের অবস্থান হলো এটি কতটুকু ঘুরেছে, যা DEGREES বা TURNSএককে পরিমাপ করা হয়। এক পাক ৩৬০ ডিগ্রির সমান। set_position মোটরের বর্তমান অবস্থানকে একটি নতুন মানে পরিবর্তন করে।

উদাহরণস্বরূপ, যদি একটি মোটর ১৮০ ডিগ্রি ঘুরে থাকে, তবে এর অবস্থান ০ ডিগ্রিতে সেট করলে সেই অবস্থানটি ১৮০ থেকে ০ ডিগ্রিতে রিসেট হয়ে যাবে। এরপর মোটরটি সেই নতুন মানের উপর ভিত্তি করে বিভিন্ন অবস্থানে ঘুরতে পারবে।

ব্যবহারবিধি: এই পদ্ধতিতে দুটি উপলব্ধ মোটর অবজেক্টের মধ্যে
একটি ব্যবহার করা যেতে পারে, যেমনটি নিচে দেখানো হয়েছে:

মোটর

আদেশ

intake_motor

intake_motor.set_position(position, units) — ইনটেক মোটর

arm_motor

arm_motor.set_position(position, units) — আর্ম মোটর

প্যারামিটার

বর্ণনা

position

মোটরের জন্য যে অবস্থানের মান নির্ধারণ করতে হবে। DEGREES পূর্ণসংখ্যা ব্যবহার করুন। TURNS পূর্ণসংখ্যা বা দশমিক ব্যবহার করা যেতে পারে।

units

ঐচ্ছিক। অবস্থানের একক: DEGREES (ডিফল্ট) অথবা TURNS।

def main():
    # Set the Intake Motor position, then return to 0 degrees
    intake_motor.set_position(180, DEGREES)
    intake_motor.spin_to_position(0, DEGREES)

# VR threads — Do not delete
vr_thread(main)

সেট_বেগ#

set_velocity একটি মোটরকে বলে দেয় সেটি কত দ্রুত ঘুরবে। উচ্চতর শতাংশ মোটরকে দ্রুত ঘোরায় এবং নিম্নতর শতাংশ মোটরকে ধীরে ঘোরায়।

প্রতিটি প্রজেক্ট ডিফল্টরূপে প্রতিটি মোটর ৫০% গতিতে ঘোরার মাধ্যমে শুরু হয়।

দ্রষ্টব্য: উচ্চ বেগে মোটর দ্রুত ঘোরে, কিন্তু এর নির্ভুলতা কম হতে পারে। নিম্ন বেগে মোটর ধীরে ঘোরে, কিন্তু এর নির্ভুলতা বেশি হতে পারে।

ব্যবহারবিধি: এই পদ্ধতিতে দুটি উপলব্ধ মোটর অবজেক্টের মধ্যে
একটি ব্যবহার করা যেতে পারে, যেমনটি নিচে দেখানো হয়েছে:

মোটর

আদেশ

intake_motor

intake_motor.set_velocity(velocity, units) — ইনটেক মোটর

arm_motor

arm_motor.set_velocity(velocity, units) — আর্ম মোটর

প্যারামিটার

বর্ণনা

velocity

ঘূর্ণনের বেগ -১০০% থেকে ১০০% পর্যন্ত। এটি একটি পূর্ণসংখ্যা integer অথবা দশমিক সংখ্যা (float ) হতে পারে।

units

বেগের একক: PERCENT।

def main():
    # Set the Intake Motor speed before collecting a Disc
    intake_motor.set_velocity(75, PERCENT)
    intake_motor.spin_for(FORWARD, 180, DEGREES)

# VR threads — Do not delete
vr_thread(main)

সেট_টাইমআউট#

set_timeout নির্ধারণ করে যে একটি মোটর তার গতি শেষ করার জন্য কতক্ষণ চেষ্টা করবে। যদি মোটরটি সেই সময়ের মধ্যে তার গতি শেষ করতে না পারে, তবে এটি চেষ্টা করা বন্ধ করে দেবে এবং কোডের পরবর্তী লাইনে চলে যাবে। এটি মোটরকে কোনো একটি গতিতে আটকে যাওয়া থেকে রক্ষা করে।

ব্যবহারবিধি: এই পদ্ধতিতে দুটি উপলব্ধ মোটর অবজেক্টের মধ্যে
একটি ব্যবহার করা যেতে পারে, যেমনটি নিচে দেখানো হয়েছে:

মোটর

আদেশ

intake_motor

intake_motor.set_timeout(value, units) — ইনটেক মোটর

arm_motor

arm_motor.set_timeout(value, units) — আর্ম মোটর

প্যারামিটার

বর্ণনা

value

একটি গতি শেষ করার জন্য মোটরটি যে পরিমাণ সময় চেষ্টা করতে পারে। এটি একটি ধনাত্মক integer অথবা দশমিক (float ) সংখ্যা হতে পারে।

units

সময়ের একক: SECONDS বা MSEC।

def main():
    # Limit how long the Arm Motor waits to reach its target
    arm_motor.set_timeout(2, SECONDS)
    arm_motor.spin_for(FORWARD, 1080, DEGREES)

# VR threads — Do not delete
vr_thread(main)

গেটার্স#

সম্পন্ন হয়েছে#

is_done একটি বুলিয়ান মান হিসাবে মোটরটির চলাচল শেষ হয়েছে কিনা তা ফেরত দেয়। মোটরের চলাচলের উপর ভিত্তি করে অন্যান্য আচরণের সময় নিয়ন্ত্রণ করতে এটি ব্যবহার করা যেতে পারে।

  • True — মোটরটির চলাচল শেষ হয়েছে।

  • False — মোটরটি এখনও ঘুরছে।

এই পদ্ধতিটি নিম্নলিখিত মোশন পদ্ধতিগুলির সাথে একত্রে কাজ করে যেগুলির wait প্যারামিটার রয়েছে: spin_for এবং spin_to_position।

ব্যবহারবিধি: এই পদ্ধতিতে দুটি উপলব্ধ মোটর অবজেক্টের মধ্যে
একটি ব্যবহার করা যেতে পারে, যেমনটি নিচে দেখানো হয়েছে:

মোটর

আদেশ

intake_motor

intake_motor.is_done() — ইনটেক মোটর

arm_motor

arm_motor.is_done() — মোটর চালু করুন

প্যারামিটার

বর্ণনা

এই পদ্ধতিতে কোনো প্যারামিটার নেই।

ঘুরছে#

is_spinning মোটরটি ঘুরছে কিনা তা একটি বুলিয়ান মান হিসাবে ফেরত দেয়। মোটরের নড়াচড়ার উপর ভিত্তি করে অন্যান্য আচরণের সময় নিয়ন্ত্রণ করতে এটি ব্যবহার করা যেতে পারে।

  • True — মোটরটি ঘুরছে।

  • False — মোটরটি ঘুরছে না।

এই পদ্ধতিটি নিম্নলিখিত মোশন পদ্ধতিগুলির সাথে একত্রে কাজ করে যেগুলির wait প্যারামিটার রয়েছে: spin_for এবং spin_to_position।

ব্যবহারবিধি: এই পদ্ধতিতে দুটি উপলব্ধ মোটর অবজেক্টের মধ্যে
একটি ব্যবহার করা যেতে পারে, যেমনটি নিচে দেখানো হয়েছে:

মোটর

আদেশ

intake_motor

intake_motor.is_spinning() — ইনটেক মোটর

arm_motor

arm_motor.is_spinning() — আর্ম মোটর

প্যারামিটার

বর্ণনা

এই পদ্ধতিতে কোনো প্যারামিটার নেই।

অবস্থান#

একটি মোটরের অবস্থান হলো এটি কতটুকু ঘুরেছে, যা DEGREES বা TURNSএককে পরিমাপ করা হয়। এক পাক ৩৬০ ডিগ্রির সমান। position মোটরের বর্তমান অবস্থান ফিরিয়ে দেয়।

প্রকল্পের শুরুতে মোটরের অবস্থান ০ ডিগ্রিতে সেট করা হয়। যদি মোটরটি সামনের দিকে এক পূর্ণ পাক ঘোরে, তবে এর অবস্থান হবে ৩৬০ ডিগ্রি বা ১ পাক। আর যদি মোটরটি বিপরীত দিকে ঘোরে, তবে এর অবস্থান ঋণাত্মক হবে।

ব্যবহারবিধি: এই পদ্ধতিতে দুটি উপলব্ধ মোটর অবজেক্টের মধ্যে
একটি ব্যবহার করা যেতে পারে, যেমনটি নিচে দেখানো হয়েছে:

মোটর

আদেশ

intake_motor

intake_motor.position(units) — ইনটেক মোটর

arm_motor

arm_motor.position(units) — আর্ম মোটর

প্যারামিটার

বর্ণনা

units

মোটরের অবস্থান ফেরানোর একক: DEGREES বা TURNS পাক।

def main():
    # Print the current Arm Motor position
    brain.screen.print(arm_motor.position(DEGREES))

# VR threads — Do not delete
vr_thread(main)

বেগ#

velocity মোটরটি কত দ্রুত ঘুরছে তা নির্দেশ করে।

ধনাত্মক মান মানে মোটরটি সামনের দিকে ঘুরছে। ঋণাত্মক মান মানে মোটরটি বিপরীত দিকে ঘুরছে।

ব্যবহারবিধি: এই পদ্ধতিতে দুটি উপলব্ধ মোটর অবজেক্টের মধ্যে
একটি ব্যবহার করা যেতে পারে, যেমনটি নিচে দেখানো হয়েছে:

মোটর

আদেশ

intake_motor

intake_motor.velocity(units) — ইনটেক মোটর

arm_motor

arm_motor.velocity(units) — আর্ম মোটর

প্যারামিটার

বর্ণনা

units

প্রত্যাবর্তনের বেগের একক: PERCENT।

def main():
    # Print the current Intake Motor velocity
    brain.screen.print(intake_motor.velocity(PERCENT))

# VR threads — Do not delete
vr_thread(main)

ইভেন্টগুলি#

বাম্পার#

চাপ দেওয়া হয়েছে#

pressed ইনটেক বাম্পার চাপলে কার্যকর হওয়ার জন্য একটি কলব্যাক ফাংশন রেজিস্টার করে।

Usage:
intake_bumper.pressed(callback)

প্যারামিটার

বর্ণনা

callback

একটি ফাংশন যা ইনটেক বাম্পার চাপলে কল করা হবে।

def stop_intake():
    intake_motor.stop()

def main():
    # Stop the Intake Motor when a Disc reaches the Intake Bumper
    intake_bumper.pressed(stop_intake)
    intake_motor.spin(FORWARD)

# VR threads — Do not delete
vr_thread(main)

মুক্তি দেওয়া হয়েছে#

released ইনটেক বাম্পার রিলিজ হওয়ার সময়কার জন্য একটি কলব্যাক ফাংশন রেজিস্টার করে।

Usage:
intake_bumper.released(callback)

প্যারামিটার

বর্ণনা

callback

একটি ফাংশন যা ইনটেক বাম্পার রিলিজ করা হলে কল করা হবে।

def lower_arm():
    arm_motor.spin_to_position(0, DEGREES)

def main():
    # Lower the Arm when the Intake Bumper is released
    intake_bumper.released(lower_arm)

# VR threads — Do not delete
vr_thread(main)

অপটিক্যাল#

বস্তু সনাক্ত করা হয়েছে#

object_detected এমন একটি ফাংশন রেজিস্টার করে, যা অপটিক্যাল সেন্সর কোনো নতুন বস্তু শনাক্ত করলেই কল করা হবে।

Usage:
front_optical.object_detected(callback, arg)

প্যারামিটার

বর্ণনা

callback

পূর্বে সংজ্ঞায়িত একটি ফাংশন যা অপটিক্যাল সেন্সর একটি নতুন বস্তু সনাক্ত করলে কার্যকর হয়।

arg

ঐচ্ছিক। কলব্যাক ফাংশনে পাঠানোর জন্য আর্গুমেন্ট ধারণকারী একটি টাপল। আরও তথ্যের জন্য প্যারামিটার সহ ফাংশনের ব্যবহার দেখুন।

def stop_intake():
    intake_motor.stop()

def main():
    # Stop the Intake Motor when the Optical Sensor detects a Disc
    front_optical.object_detected(stop_intake)
    intake_motor.spin(FORWARD)

# VR threads — Do not delete
vr_thread(main)

বস্তু_হারানো#

object_lost এমন একটি ফাংশন রেজিস্টার করে, যা অপটিক্যাল সেন্সর কোনো শনাক্ত করা বস্তু হারিয়ে ফেললে কল করা হবে।

Usage:
front_optical.object_lost(callback, arg)

প্যারামিটার

বর্ণনা

callback

পূর্বে সংজ্ঞায়িত একটি ফাংশন যা অপটিক্যাল সেন্সর সনাক্ত করা বস্তু হারিয়ে ফেললে কার্যকর হয়।

arg

ঐচ্ছিক। কলব্যাক ফাংশনে পাঠানোর জন্য আর্গুমেন্ট ধারণকারী একটি টাপল। আরও তথ্যের জন্য প্যারামিটার সহ ফাংশনের ব্যবহার দেখুন।

def resume_intake():
    intake_motor.spin(FORWARD)

def main():
    # Restart the Intake Motor when the Optical Sensor no longer detects a Disc
    front_optical.object_lost(resume_intake)

# VR threads — Do not delete
vr_thread(main)

কনসোল#

প্রজেক্ট চলার সময় কনসোল টেক্সট, সংখ্যা এবং ভেরিয়েবলের মান প্রদর্শন করে। কনসোল মেথড ব্যবহার করে কার্সারকে নতুন সারিতে সরানো, কনসোল পরিষ্কার করা এবং মনিটর ট্যাবে ভেরিয়েবল বা সেন্সরের মান যোগ করা যায়।

প্রিন্ট#

মস্তিষ্ক.স্ক্রিন.প্রিন্ট#

brain.screen.print বর্তমান কার্সার অবস্থান ব্যবহার করে কনসোলে টেক্সট, সংখ্যা বা ভেরিয়েবলের মান প্রদর্শন করে। এটি কনসোল এপিআই পৃষ্ঠার print মতো কাজ করে।

পরবর্তী মুদ্রিত মানটি একটি নতুন সারিতে শুরু করতে চাইলে brain.screen.next_row ব্যবহার করুন।

Usage:
brain.screen.print(value)

প্যারামিটার

বর্ণনা

value

কনসোলে প্রদর্শন করার জন্য টেক্সট, সংখ্যা, বা ভেরিয়েবলের মান।

def main():
    # Display a message in the Console
    brain.screen.print("Hello, robot!")

# VR threads — Do not delete
vr_thread(main)

VEXcode কনসোল, যেখানে "হ্যালো, রোবট!" লেখাটি প্রদর্শিত হচ্ছে।

brain.screen.next_row#

brain.screen.next_row কার্সারকে কনসোলের পরবর্তী সারির প্রথম কলামে নিয়ে যায়। পরবর্তী যে মানটি প্রিন্ট করা হবে, তা সেই সারিতে প্রদর্শিত হবে।

Usage:
brain.screen.next_row()

প্যারামিটার

বর্ণনা

এই পদ্ধতিতে কোনো প্যারামিটার নেই।

def main():
    # Print on two rows
    brain.screen.print("Row 1")
    brain.screen.next_row()
    brain.screen.print("Row 2")

# VR threads — Do not delete
vr_thread(main)

VEXcode কনসোল, যেখানে কনসোলটি দেখা যাচ্ছে এবং প্রথম লাইনে "সারি 1" এবং দ্বিতীয় লাইনে "সারি 2" লেখা রয়েছে।

brain.screen.clear_screen#

brain.screen.clear_screen কনসোল থেকে সমস্ত সারি মুছে দেয় এবং কার্সারকে সারি ১-এ ফিরিয়ে নিয়ে যায়।

Usage:
brain.screen.clear_screen()

প্যারামিটার

বর্ণনা

এই পদ্ধতিতে কোনো প্যারামিটার নেই।

def main():
    # Display text, then clear it after two seconds
    brain.screen.print("This will disappear...")
    wait(2, SECONDS)
    brain.screen.clear_screen()

# VR threads — Do not delete
vr_thread(main)

মনিটর#

মনিটর_ভেরিয়েবল#

monitor_variable VEXcode-এর মনিটর ট্যাবে এক বা একাধিক পূর্বনির্ধারিত ভেরিয়েবল যোগ করে। এর মাধ্যমে, কোনো প্রজেক্ট চলার সময় আপনি একটি ভেরিয়েবলের মানের পরিবর্তন পর্যবেক্ষণ করতে পারবেন।

সফলভাবে মনিটর করার জন্য ভেরিয়েবলগুলোকে অবশ্যই গ্লোবাল হতে হবে monitor_variable

Usage:
monitor_variable(“variable”)
monitor_variable(“variable1”, “variable2”)

প্যারামিটার

বর্ণনা

variable

পর্যবেক্ষণ করার জন্য একটি পূর্বনির্ধারিত গ্লোবাল ভেরিয়েবলের নাম, যা একটি স্ট্রিং হিসাবে দেওয়া হয়। একাধিক ভেরিয়েবল পর্যবেক্ষণ করতে, প্রতিটি ভেরিয়েবলের নাম কমা দিয়ে আলাদা করুন।

def main():
    # Monitor the amount of loops
    global loops
    monitor_variable("loops")

    # Drive in a square 3 times
    for loops in range(12):
        drivetrain.turn_for(RIGHT, 90, DEGREES)
        drivetrain.drive_for(FORWARD, 150, MM)

# VR threads — Do not delete
vr_thread(main)

মনিটর_সেন্সর#

monitor_sensor VEXcode-এর মনিটর ট্যাবে এক বা একাধিক সেন্সর মান যোগ করে। এর মাধ্যমে, কোনো প্রজেক্ট চলার সময় আপনি সেন্সর মানগুলোর পরিবর্তন পর্যবেক্ষণ করতে পারবেন।

প্রতিটি সেন্সর মান স্ট্রিং হিসেবে প্রদান করুন।

Usage:
monitor_sensor(“sensor”)
monitor_sensor(“sensor1”, “sensor2”)

প্যারামিটার

বর্ণনা

sensor

The sensor value to monitor, given as a string. To monitor more than one sensor value, separate each sensor value with a comma. Supported sensor identifiers include:

  • Brain
    • brain.timer.time
  • Drivetrain
    • drivetrain.is_done
    • drivetrain.is_moving
    • drivetrain.heading
    • drivetrain.rotation
    • drivetrain.velocity_rpm
    • drivetrain.velocity_percent
  • Arm Motor
    • arm_motor.is_done
    • arm_motor.is_spinning
    • arm_motor.position_degrees
    • arm_motor.position_turns
    • arm_motor.velocity_rpm
    • arm_motor.velocity_percent
  • Arm Motor Group
    • arm_motor_group.is_done
    • arm_motor_group.is_spinning
    • arm_motor_group.position_degrees
    • arm_motor_group.position_turns
    • arm_motor_group.velocity_rpm
    • arm_motor_group.velocity_percent
  • Intake Motor
    • intake_motor.is_done
    • intake_motor.is_spinning
    • intake_motor.position_degrees
    • intake_motor.position_turns
    • intake_motor.velocity_rpm
    • intake_motor.velocity_percent
  • Intake Motor Group
    • intake_motor_group.is_done
    • intake_motor_group.is_spinning
    • intake_motor_group.position_degrees
    • intake_motor_group.position_turns
    • intake_motor_group.velocity_rpm
    • intake_motor_group.velocity_percent
  • Catapult Motor
    • catapult_motor.is_done
    • catapult_motor.is_spinning
    • catapult_motor.position_degrees
    • catapult_motor.position_turns
    • catapult_motor.velocity_rpm
    • catapult_motor.velocity_percent
  • Catapult Tension Motor
    • catapult_tension_motor.is_done
    • catapult_tension_motor.is_spinning
    • catapult_tension_motor.position_degrees
    • catapult_tension_motor.position_turns
    • catapult_tension_motor.velocity_rpm
    • catapult_tension_motor.velocity_percent
  • Bumpers
    • intake_bumper.pressing
    • bumper.pressing
  • Front Distance Sensor
    • front_distance.is_object_detected
    • front_distance.object_distance_mm
    • front_distance.object_distance_inches
  • Front Optical Sensor
    • front_optical.is_near_object
    • front_optical.color
    • front_optical.brightness
    • front_optical.hue
  • Color Sensor
    • color.is_near_object
    • color.color
    • color.brightness
    • color.hue

def main():
    # Monitor the robot's heading
    monitor_sensor("drivetrain.heading")
    drivetrain.turn_for(RIGHT, 450, DEGREES)

# VR threads — Do not delete
vr_thread(main)

সংবেদন#

বাম্পার#

চাপ দেওয়া#

pressing রিটার্ন হয়, যা নির্দেশ করে ইনটেক বাম্পারটি বর্তমানে চাপা আছে কিনা।

  • True - ইনটেক বাম্পারটি চাপা আছে।

  • False - ইনটেক বাম্পারটি চাপা হয়নি।

Usage:
intake_bumper.pressing()

প্যারামিটার

বর্ণনা

এই পদ্ধতিতে কোনো প্যারামিটার নেই।

def main():
    # Print whether the Intake Bumper is pressed
    brain.screen.print(intake_bumper.pressing())

# VR threads — Do not delete
vr_thread(main)

অপটিক্যাল#

is_near_object#

is_near_object একটি বুলিয়ান মান রিটার্ন করে যা নির্দেশ করে যে অপটিক্যাল সেন্সরটি সীমার মধ্যে কোনো বস্তু শনাক্ত করেছে কি না।

  • True – অপটিক্যাল সেন্সরটি একটি বস্তু শনাক্ত করে।

  • False – অপটিক্যাল সেন্সরটি কোনো বস্তু শনাক্ত করতে পারছে না।

Usage:
front_optical.is_near_object()

প্যারামিটার

বর্ণনা

এই পদ্ধতিতে কোনো প্যারামিটার নেই।

def main():
    # Print whether the Front Optical Sensor detects a nearby Disc
    brain.screen.print(front_optical.is_near_object())

# VR threads — Do not delete
vr_thread(main)

রঙ#

color শনাক্তকৃত হিউ মানের উপর ভিত্তি করে একটি Color ক্লাসের ইনস্ট্যান্স ফেরত দেয়। শর্তসাপেক্ষ বিবৃতি তৈরি করার জন্য এগুলোকে পূর্বনির্ধারিত Color অবজেক্টের সাথে তুলনা করা যেতে পারে।

সম্ভাব্য রংগুলো হলো:

  • NONE

  • RED - ৩৪০° থেকে ২০° এর মধ্যে একটি বর্ণচ্ছটার মান

  • GREEN - ৮০° - ১৪০° এর মধ্যে একটি বর্ণচ্ছটার মান

  • BLUE - ২০০° - ২৪০° এর মধ্যে একটি বর্ণচ্ছটার মান

  • YELLOW - ৪০° - ৬০° এর মধ্যে একটি বর্ণচ্ছটার মান

  • ORANGE - ২০° - ৪০° এর মধ্যে একটি বর্ণচ্ছটার মান

  • PURPLE - ২৪০° - ২৮০° এর মধ্যে একটি বর্ণচ্ছটার মান

  • CYAN - ১৪০° - ২০০° এর মধ্যে একটি রঙের মান

দ্রষ্টব্য: অপটিক্যাল সেন্সরটি নির্দিষ্ট রঙের সাথে মেলে এমন হিউ রেঞ্জ খুঁজছে। নির্দিষ্ট হিউ রেঞ্জ সনাক্ত করার জন্য, hue দেখুন।

Usage:
front_optical.color()

প্যারামিটার

বর্ণনা

এই পদ্ধতিতে কোনো প্যারামিটার নেই।

def main():
    # Print the color detected by the Front Optical Sensor
    brain.screen.print(front_optical.color())

# VR threads — Do not delete
vr_thread(main)

উজ্জ্বলতা#

brightness বস্তু থেকে প্রতিফলিত আলোর পরিমাণকে একটি দশমিক (float) হিসাবে ফেরত দেয় যা শতাংশকে প্রতিনিধিত্ব করে।

উচ্চ শতাংশের অর্থ হলো অপটিক্যাল সেন্সরে বেশি আলো প্রতিফলিত হয়। নিম্ন শতাংশের অর্থ হলো কম আলো প্রতিফলিত হয়।

Usage:
front_optical.brightness()

প্যারামিটার

বর্ণনা

এই পদ্ধতিতে কোনো প্যারামিটার নেই।

def main():
    # Print the Front Optical Sensor brightness
    brain.screen.print(front_optical.brightness())

# VR threads — Do not delete
vr_thread(main)

রঙ#

hue সনাক্ত করা রঙের হিউ মান 0 থেকে 359 পর্যন্ত একটি দশমিক (float) হিসাবে ফেরত দেয়।

হিউ হলো কালার হুইলের সংখ্যা ব্যবহার করে রঙ বর্ণনা করার একটি পদ্ধতি।

একটি বৃত্তাকার রঙের চাকা যা রঙের একটি সম্পূর্ণ বর্ণালী প্রদর্শন করে, যার পরিধি বরাবর ডিগ্রি মান চিহ্নিত করা আছে, যা উপরের 0 ডিগ্রি থেকে 360 ডিগ্রি পর্যন্ত 30-ডিগ্রি বৃদ্ধিতে বৃদ্ধি পায়।

Usage:
front_optical.hue()

প্যারামিটার

বর্ণনা

এই পদ্ধতিতে কোনো প্যারামিটার নেই।

def main():
    # Print the hue detected by the Front Optical Sensor
    brain.screen.print(front_optical.hue())

# VR threads — Do not delete
vr_thread(main)