Driver Station Log File Viewer

In an effort to provide information to aid in debugging, the FRC® Driver Station creates log files of important diagnostic data while running. These logs can be reviewed later using the FRC Driver Station Log Viewer. The Log Viewer can be found via the shortcut installed in the Start menu, in the FRC Driver Station folder in Program Files, or via the Gear icon in the Driver Station.

Showing how to open the Log Viewer screen using the right console icon.

Not

Several alternative tools exist that provide similar functionality to the FRC Driver Station Log Viewer. AdvantageScope is an option included in WPILib, and DSLOG Reader is a third-party option. Note that WPILib offers no support for third-party projects.

Etkinlik Kayıtları- Logs

The Driver Station logs all messages sent to the Messages box on the Diagnostics tab (not the User Messages box on the Operation tab) into a new Event Log file. When viewing Log Files with the Driver Station Log File Viewer, the Event Log and Driver Station Log files are overlaid in a single display.

Log files are stored in C:\Users\Public\Documents\FRC\Log Files. Each log has date and timestamp in the file name and has two files with extension .dslog and .dsevents.

Log Viewer UI

Overview of the home Log Viewer screen.

Log Viewer, Driver Station günlük dosyalarının analizine yardımcı olacak bir dizi kontrol ve ekran içerir:

  1. File Selection Box - Bu pencere, seçili klasördeki tüm kullanılabilir günlük dosyalarını görüntüler. Listedeki bir günlük dosyasını seçmek için tıklayın.

  2. Path to Log Files - Bu kutu, görüntüleyicinin günlük dosyaları için aradığı geçerli klasörü görüntüler. Bu, varsayılan olarak Driver Station’ın günlük dosyalarını içinde sakladığı klasördür. Farklı bir konuma göz atmak için klasör simgesini tıklayın.

  3. Mesaj Kutusu-Message Box - Bu kutu, Olay Günlüğündeki tüm mesajların bir özetini görüntüler. Grafikteki bir olayın üzerine gelindiğinde, bu kutu o olayın bilgilerini görüntülemek için değişir.

  4. Scroll Bar - Grafik yakınlaştırıldığında, bu kaydırma çubuğu grafiğin yatay kaydırılmasına izin verir.

  5. Voltage Filter - Bu kontrol Voltaj Filtresini açar ve kapatır (varsayılan olarak açıktır). Voltaj Filtresi, Pil Voltajı alınmadığında CPU%, robot modu ve trip time gibi verileri filtreler (DS’nin roboRIO ile iletişim halinde olmadığını gösterir).

  6. AutoScale - Bu düğme, günlükteki tüm verileri göstermek için grafiği uzaklaştırır.

  7. Match Length-Maç Uzunluğu - Bu düğme, grafiği yaklaşık olarak bir FRC eşleşmesinin uzunluğuna ölçeklendirir (2 dakika ve 30 saniye gösterilir). Maçın başlangıcını otomatik olarak bulmaz, Otonom modun başlangıcını bulmak için kaydırma çubuğunu kullanarak kaydırmanız gerekecektir.

  8. Grafik-Graph - Bu ekran, DS Günlük dosyasından (voltaj, yolculuk süresi, roboRIO CPU%, Kayıp Paketler ve robot modu) alınan grafik verilerini ve ayrıca üst üste binen olay verilerini (grafikte noktalar olarak gösterilen, seçili olayların dikey çizgiler olarak gösterildiği tüm grafik). Grafikteki olay işaretçilerinin üzerine gelmek, ekranın sol alt kısmındaki Messages penceresinde olayla ilgili bilgileri görüntüler.

  9. Robot Mode Key - Ekranın üst kısmında görüntülenen Robot Modu için anahtar

  10. Önemli olay belirteçleri - Grafikte dikey çizgiler olarak gösterilen, önemli olayların belirteçleridir

  11. Graph tuşu - Grafik verileri için önemlidir

  12. Filtre Kontrolü-Filter Control - Filtre modunu seçmek için açılır menü (filtre modları aşağıda açıklanmıştır)

  13. Sekme Kontrolü-Tab Control - Grafik (Veriler ve Olaylara karşı Zaman) ve Olay Listesi ekranları arasında geçiş yapma kontrolü.

Using the Graph Display

The different parts of the graph screen and some of the basic signals.

Grafik Ekranı aşağıdaki bilgileri içerir:

  1. Gezi Süresi - Trip Time ms (yeşil çizgi) ve saniye başına Kayıp Paket - Lost Packets (mavi dikey çubuklar olarak görüntülenir) cinsinden gösterilir. Bu örnek resimlerde Trip Time, grafiğin altında düz yeşil bir çizgidir ve kayıp paket yoktur

  2. Sarı çizgi olarak gösterilen Pil voltajı grafiği.

  3. Kırmızı çizgi olarak roboRIO CPU% grafiği

  4. Robot modu ve DS modu grafiği. Ekranın üst grubu, Driver Station tarafından komut verilen modu gösterir. Alttaki set, robot kodu tarafından bildirilen modu gösterir. Bu örnekte robot, devre dışı ve otonom modlar sırasında modunu rapor etmiyor, ancak Teleop sırasında rapor edilmiş.

  5. Olayın meydana geldiği zamanı gösteren olay işaretçileri grafikte görüntülenecektir. Hatalar kırmızı renkte görüntülenecektir; uyarılar sarı renkte görüntülenecektir. Bir olay işaretleyicisinin üzerine gelmek, ekranın sol alt kısmındaki Messages kutusunda olayla ilgili bilgileri görüntüler.

  6. Önemli olaylar, grafik ekranı boyunca dikey çizgiler olarak gösterilir.

Grafiğin bir bölümünü yakınlaştırmak için, istenen görüntüleme alanını tıklayıp sürükleyin. Yalnızca zaman eksenini yakınlaştırabilirsiniz, dikey olarak yakınlaştıramazsınız.

Event List

Event List that is gotten to by the tab at the top center.

Event List sekmesi, Driver Station tarafından kaydedilen olayların (uyarılar ve hatalar) bir listesini görüntüler. Görüntülenen olaylar ve ayrıntılar, o anda etkin olan filtre tarafından belirlenir (resimlerde “All Events, All Info” filtresi etkin gösterilir).

Filtreler

Şu anda Günlük Görüntüleyicide-Log Viewer üç filtre bulunmaktadır:

  1. Default: Bu filtre, Driver Station tarafından üretilen birçok hata ve uyarıyı filtreler. Bu filtre, Robot’ta kod tarafından atılan hataları tanımlamak için kullanışlıdır.

  2. All Events and Time: Bu filtre tüm olayları ve meydana geldikleri zamanı gösterir

  3. All Events, All Info: Bu filtre tüm olayları ve tüm kayıtlı bilgileri gösterir. Şu anda, bu filtre ile “All Events and Time” arasındaki temel fark, bu seçeneğin belirli bir mesajın ilk oluşumu için “benzersiz” göstericiyi göstermesidir.

Maçlardan Günlükleri Tanımlama

To identify a log from a match look for the "FMS Connected" message then the match number.

A common task when working with the Driver Station Logs is to identify which logs came from competition matches. Logs which were taken during a match can now be identified using the FMS Connected event which will display the match type (Practice, Qualification or Elimination), match number, and the current time according to the FMS server. In this example, you can see that the FMS server time and the time of the Driver Station computer are fairly close, approximately 7 seconds apart.

Günlük Görüntüleyici-Log Viewer ile Yaygın Bağlantı Hatalarını Tanımlama

When diagnosing robot issues, there is no substitute for thorough knowledge of the system and a methodical debugging approach. If you need assistance diagnosing a connection problem at your events it is strongly recommended to seek assistance from your FTA and/or CSA. The goal of this section is to familiarize teams with how some common failures can manifest themselves in the DS Log files. Please note that depending on a variety of conditions a particular failure show slightly differently in a log file.

Not

Bu bölümde gösterilen tüm günlük dosyalarının Match Length - Uzunluğu Eşleştir düğmesi kullanılarak uzunluk eşleşecek şekilde ölçeklendiğini ve ardından otonom modun başlangıcına kaydırıldığını unutmayın. Ayrıca, günlüklerin çoğu pil voltajı bilgilerini içermez, günlük kaydı için kullanılan platform pil voltajını bildirmek için uygun şekilde kablolanmamıştır.

Tüyo

Günlük Görüntüleyicide bulunan bazı hata mesajları aşağıda gösterilmektedir ve daha fazlası: doc: Driver Station Hataları / Uyarıları makalesinde detaylandırılmıştır.

“Normal” Log-Kayıtlar

A normal graph and a couple of harmless events.

Bu, normal bir maç günlüğü örneğidir. İlk kutuda yer alan hatalar ve uyarılar, DS’nin ilk başlatıldığı zamandır ve göz ardı edilebilir. Bu, bu olayların “FMS Connected:” olayından önce meydana geldiği gözlemlenerek doğrulanır. Gösterilen son olay da göz ardı edilebilir, aynı zamanda robotun DS’ye ilk bağlanmasından (FMS’ye bağlandıktan 3 saniye sonra gerçekleşir) ve maç başlamadan yaklaşık 30 saniye önce gerçekleşir.

FMS’den bağlantı kesik

A disconnect can cause the log to be split into two pieces but will at least haved events showing the disconnect.

DS, FMS’den ve dolayısıyla robottan ayrıldığında, maç sırasında günlüğü parçalara ayırabilir. Bu problemin temel göstergeleri, 1. günlüğün son olayı olup, FMS’ye bağlantının artık “bad” olduğunu ve 2. günlükten gelen ikinci olaydır; bu, yeni bir FMS bağlı mesajdır ve ardından DS’nin hemen Teleop Enabled’e geçiş yapması gelir. . Bu tür bir arızanın en yaygın nedeni, mandalı olmayan bir ethernet kablosu veya DS bilgisayarında hasarlı bir ethernet bağlantı noktasıdır.

roboRIO Reboot-Yeniden başlatmak

A roboRIO reboot is most evident by a "Time since robot boot" message.

“Time since robot boot” mesajı, roboRIO’nun yeniden başlatılmasının neden olduğu bir bağlantı hatasındaki birincil göstergedir. Bu günlükte DS, ilk olayda belirtildiği gibi 3:01:36’da roboRIO ile bağlantısını kaybeder. İkinci olay, bağlantı başarısız olduktan sonra başlatılan ping’in roboRIO dışındaki tüm cihazlarda başarılı olduğunu gösterir. 3:01:47’de roboRIO pinglere tekrar yanıt vermeye başlar, 3:01:52’de ek bir ping başarısız olur. 3:02:02’de Driver Station roboRIO’ya bağlanır ve roboRIO bunun 3.682 saniyedir açık olduğunu bildirir. Bu, roboRIO’nun yeniden başlatıldığının açık bir göstergesidir. Kod yüklenmeye devam ediyor ve 3:02:24’te kod, kamera ile iletişimde bir hata olduğunu bildiriyor. Kodun başlaması tamamlanmadan hemen önce hiçbir robot kodunun çalışmadığını belirten bir uyarı da rapor edilmiştir.

Robot üzerindeli Ethernet kablo problemleri

This issue is evident because the driverstation could connect to the radio but not the roboRIO yet the roboRIO hadn't rebooted.

Robot üzerindeki ethernet kablosuyla ilgili bir sorun, öncelikle roboRIO’nun kötüye giden pingi ve roboRIO yeniden bağlandığında Telsiz Kayboldu ve Telsiz Görüldü olayları ile gösterilir. RoboRIO yeniden bağlandığında “Time since robot boot-Robot açılışından itibaren geçen süre” mesajı, roboRIO’nun yeniden başlatılmadığını da gösterir. Bu örnekte, robot Ethernet kablosunun bağlantısı 3:31:38’de kesildi. Ping durumu, radyonun hala bağlı olduğunu gösterir. Robot 3:32:08 de yeniden bağlandığında “Time since robot boot-Robot açılışından itibaren geçen süre” 1809 saniyedir ve bu roboRIO’nun açıkça yeniden başlamadığını gösterir. 3:32: 12’de robot, radyoyu 24.505 saniye önce kaybettiğini ve 0.000 saniye önce geri geldiğini belirtir. Bu noktalar grafikte dikey çizgiler olarak, radyo kayıpları için sarı ve radyo görülenler için yeşil olarak işaretlenmiştir. Bağlantının kesilmesi ve bağlantı yoluyla gösterildiği gibi zamanların gerçek olaylardan biraz farklı olduğunu, ancak ne olduğu hakkında ek bilgi sağlamaya yardımcı olduğunu unutmayın.

Radio yeniden başlatma-reboot

The ping here shows the roboRIO and the radio as BAD.

Robot telsizinin yeniden başlatılması, tipik olarak telsizle ~40-45 saniye süreyle bağlantının kesilmesiyle karakterize edilir. Bu örnekte, radyo kısa bir süre 3:22:44 de güç kaybetti ve bu da yeniden başlatılmasına neden oldu. 3:22:45 olay, telsize gelen ping’in başarısız olduğunu gösterir. 3:23:11’de DS, roboRIO ile iletişimi yeniden kazanır ve roboRIO 1272.775 saniyedir açık olduğunu belirtir. Telsizdeki ağ cihazının çok hızlı bir şekilde geri geldiğini unutmayın, bu nedenle anlık bir güç kaybı, “telsizin kaybolması”/”telsizin görülmesi” olay çiftiyle sonuçlanmayabilir. Daha uzun bir bozulma, radyo olaylarının DS tarafından günlüğe kaydedilmesine neden olabilir. Bu durumda, telsizin yeniden başlatılmasına işaret eden ayırt edici faktör, DS’den gelen radyonun ping durumudur. Radyo sıfırlanırsa, telsize ulaşılamaz. Sorun robotta bir kablolama veya bağlantı sorunuysa, radyo pingi “Good” kalmalıdır.