Який щит використовувати для GPRS?


9

Я планую побудувати пристрій, який би зчитував деякі сенсорні дані та надсилав їх через GPRS, наприклад. раз на день. (Так не оригінально, так.) Але моя проблема полягає у виборі екрана GSM / GPRS.

Офіційний щит має приємний інтерфейс для HTTP POST / GET . ОТО, щит, здається, розпроданий (і все одно буде досить дорогим).

Здається, є інші екрани, але приклади їх коду, як правило, виглядають досить хакітно : пристрій чекає довільного моменту, а потім сподівається, що сервер буде зроблено. Це ІМО як неефективне, так і ненадійне.

Моє запитання: який GSM / GPRS щит ви б рекомендували, з такими можливостями:

  • розумна бібліотека з прикладами, такими як офіційна
  • зовнішня антена
  • бонус: конкурентна ціна
  • ще один бонус: сподіваємось, "справжній" щит, тому не потрібно паяння та кілька штифтів, які все ще легко використовуються для датчиків.

Відповіді:


3

Ця бібліотека повинна працювати майже з усім, що має на собі модуль M10.

Я маю досвід роботи лише з модулями SIM900. Знайшли найдешевший на EBay.

Хоча взаємодія з цими речами може бути проблемою спочатку, вам дійсно просто потрібно прочитати посібник для всіх команд AT та виконати їх. Я написав пару функцій, які можуть допомогти:

Примітка. Ви можете безпечно замінювати всі екземпляри DEBUG_PRINTта DEBUG_PRINTLNз Serial.printі Serial.println.

SoftwareSerial SIM900(7, 8);

/*
    Sends AT commands to SIM900 module.

    Parameter   Description
    command     String containing the AT command to send to the module
    timeout     A timeout, in milliseconds, to wait for the response

    Returns a string containing the response. Returns NULL on timeout.

*/
String SIMCommunication::sendCommand(String command, int timeout) {
    SIM900.listen();
    // Clear read buffer before sending new command
    while(SIM900.available()) { SIM900.read(); }

    SIM900.println(command);

    if (responseTimedOut(timeout)) {
        DEBUG_PRINT(F("sendCommand Timed Out: "));DEBUG_PRINTLN(command);
        return NULL;
    }

    String response = "";

    while(SIM900.available()) {
        response.concat((char)SIM900.read());
        delayMicroseconds(500);
    }

    return response;
}

/*
    Waits for a response from SIM900 for <ms> milliseconds

    Returns true if timed out without response. False otherwise.
*/
bool SIMCommunication::responseTimedOut(int ms) {
    SIM900.listen();

    int counter = 0;
    while(!SIM900.available() && counter < ms) {
        counter++;
        delay(1);
    }

    // Timed out, return null
    if (counter >= ms) {
        return true;
    }
    counter = 0;
    return false;
}


2

Я нарешті замовив дошку Elechouse, яка використовує мікросхему M10. Знайдено на eBay за 59 USD. Здається, добре працює з офіційною бібліотекою.

Як зазначено в посібнику, йому потрібно забезпечити зовнішнє живлення - USB-кабелю недостатньо!


Ви вважаєте, що дошка елешауса є надійною, чи вона надсилає / отримує gprs?
Hamish_Fernsby

Чи підтримується 2G у вашій країні? Принаймні в Європі є плани вимкнути мережу 2G, і вибраний вами модуль не підтримує 3G
габонатор

0

LinkitOne - нормально, не щит, а сумісна плата контролера Arduino із вбудованою GSM / GPRS / GPS / Wifi. Комісія бібліотек не має такої кількості діагностичних методів, як, наприклад, Adafruit, але її було легко встановити та надійно. Основним недоліком LinkitOne було те, що він використовує інший процесор від Arduinos, тому багато бібліотек Arduino не сумісні, наприклад для пристроїв I2C.

Версія Adafruit Fona SIM808 2G Shield. макет щита, але заголовки, що складаються, потрібно купувати і спаяти окремо. Розпізнавання за замовчуванням працює з Uno, але для Mega потрібні моди. Бібліотека має багато зручних методів діагностики (напруга акумулятора, сила сигналу тощо). працювали з передплаченою SIM-карткою з giffgaff, але не з водофоном чомусь. SMS працював нормально. Я можу підключитися до GPRS, але отримання html з веб-сайту не працювало.

DFRobot SIM808 GPS / GPRS / GSM Shield - попередньо з'єднані провідні роз'ємні екрани, інструкції щодо завантаження коду та запуску пристрою є складними та невиразними. Я навіть не зміг налагодити базовий зв’язок з Arduino для роботи. Або бібліотека дуже баггійна, або мій пристрій був несправний.

SEEEDStudio 113030009 GPRS Щит з антеною та зовнішнім тримачем SIM V3.0 Я, ймовірно, твітує цей наступний ..

Офіційна дошка Arduino GSM відмінена

Модуль Sparkfun GSM / GPRS - відмінено SM5100B

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.