FRC सर्वोत्तम प्रथाएं
इवेंट तैयारी चेकलिस्ट
- सभी पाइपलाइन्स को अपने प्रोग्रामिंग लैपटॉप पर डाउनलोड और बैकअप करें।
- नवीनतम Limelight इमेज की एक कॉपी अपने प्रोग्रामिंग लैपटॉप पर डाउनलोड करें।
- अपनी पाइपलाइन्स और उनके इंडेक्स की सूची रिकॉर्ड करें।
- 1 - ड्यूल टारगेट लो
- 2 - ड्यूल टारगेट हाई कार्गो
- आपके LL मे ं जाने वाले सभी पावर और ईथरनेट केबल्स में स्ट्रेन रिलीफ जोड़ें।
- सभी कनेक्शन्स को हॉट-ग्लू करने पर विचार करें।
- सुनिश्चित करें कि आप अभ्यास और इवेंट्स के दौरान स्ट्रीम को देखने के लिए वेब ब्राउज़र के बजाय डैशबोर्ड (Smartdashboard, Shuffleboard) का उपयोग कर रहे हैं। डिफ़ॉल्ट वेब कंट्रोल्स में स्पूरियस डिस्कनेक्शन के बाद स्ट्रीम से स्वतः पुनः कनेक्ट होने की क्षमता नहीं होती है, लेकिन SmartDashboard और Shuffleboard दोनों में डिफ़ॉल्ट रूप से ऑटो-रिकनेक्शन बिल्ट-इन होता है।
- इवेंट में ईथरनेट टेदरिंग को सक्षम करने और दूसरे रेडियो पोर्ट से बचने के लिए अपने रोबोट में एक नेटवर्क स्विच जोड़ें। हम Brainboxes SW-005 5 पोर्ट स्विच की सिफारिश करते हैं
- स्ट्रैंडेड वायर्स वाले ट्विस्टेड Cat6 केबल्स का उपयोग करें। फ्लैट ईथरनेट केबल्स का उपयोग न करें।
- दूसरे रेडियो पोर्ट का उपयोग न करें। यदि संभव हो तो सभी डिवाइसेस को अपने नेटवर्क स्विच के माध्यम से रूट करें।
- USB के माध्यम से अपने रोबोट से टेदर होने पर Limelight संचार को सक्षम करने के लिए पोर्ट फॉरवर्डिंग सेटअप करें।
- पोर्ट 5800, 5801, 5802, 5803, 5804, 5805, 5806, और 5807 को फॉरवर्ड करें
- Java
- C++
import edu.wpi.first.wpiutil.net.PortForwarder;
@Override
public void robotInit()
{
// सुनिश्चित करें कि आप अपने रोबोट कोड में पोर्ट फॉरवर्डिंग को केवल एक बार कॉन्फ़िगर करें।
// इन फ़ंक्शन कॉल्स को किसी भी आवधिक फ़ंक्शन में न रखें
for (int port = 5800; port <= 5809; port++) {
PortForwarder.add(port, "limelight.local", port);
}
}
http://roborio-(teamnum)-FRC.local:5801 अब limelight.local:5801 को फॉरवर्ड करेगा
दूसरा limelight जोड़ने के लिए, अलग लोकल पोर्ट्स का उपयोग करें। पहले PortForwarder.add() आर्गुमेंट में "+10" नोट करें:
for (int port = 5800; port <= 5809; port++) {
PortForwarder.add(port+10, "limelight-left.local", port);
}
http://roborio-(teamnum)-FRC.local:5811 अब limelight-left.local:5801 को फॉरवर्ड करेगा
#include <wpi/PortForwarder.h>
void Robot::RobotInit
{
for (int port = 5800; port <= 5809; port++)
{
wpi::PortForwarder::GetInstance().Add(port, "limelight-left.local", port);
}
}
http://roborio-(teamnum)-FRC.local:5801 अब limelight.local:5801 को फॉरवर्ड करेगा
दूसरा limelight जोड़ने के लिए, अलग लोकल पोर्ट्स का उपयोग करें। पहले PortForwarder::add() आर्गुमेंट में "+10" नोट करें:
for (int port = 5800; port <= 5809; port++)
{
wpi::PortForwarder::GetInstance().Add(port+10, "limelight.local", port);
}
http://roborio-(teamnum)-FRC.local:5811 अब limelight-left.local:5801 को फॉरवर्ड करेगा
पोर्ट फॉरवर्डिंग सक्षम होने के बाद, आप अपने Limelight के कॉन्फ़िग पेज को http://roborio-(teamnum)-FRC.local:5801 पर एक्सेस कर सकते हैं। उदाहरण के लिए, टीम 2928 http://roborio-2928-FRC.local:5801 का उपयोग करेगी
इवेंट के दौरान कैलिब्रेशन
- अपने रोबोट को फील्ड पर प्रत्येक टारगेट तक रोल करें।
- सुनिश्चित करें कि आपका थ्रेशोल्डिंग ठीक से काम कर रहा है। इस प्रक्रिया के दौरान "थ्रेशोल्ड" व्यू पर स्विच करें (इमेज स्ट्रीम के नीचे स्थित)।
- अपने रोबोट को टारगेट के करीब और टारगेट से दूर रोल करें। सुनिश्चित करें कि क्रॉसहेयर्स सही ढंग से कैलिब्रेट किए गए हैं।
- टारगेट से दूर होने पर, अपने रोबोट को बाएं और दाएं ~ 30 डिग्री घुमाएं यह सुनिश्चित करने के लिए कि अन्य टारगेट्स गलती से ट्रैक नहीं किए जाएंगे।
- अधिक ट्यूनिंग टिप्स के लिए नीचे दिए गए ट्यूनिंग सेक्शन को देखें।
- सुनिश्चित करें कि कोई अन्य फील्ड / एरीना एलिमेंट्स गलती से ट्रैक नहीं किए जा रहे हैं। यदि आप एरीना लाइट्स को पिक कर रहे हैं तो अपने एरिया और एस्पेक्ट रेशियो फिल्टर्स की जांच करें।
- सभी टारगेट्स और गलत टारगेटिंग के स्नैपशॉट लें। आप इनका उपयोग पिट्स में अपनी पाइपलाइन्स को ट्यून करने के लिए कर सकते हैं।